Concurrent Circular Reference Attribute Grammars
Reference Attribute Grammars (RAGs) is a declarative executable formalism used for constructing compilers. Previous work has extended RAGs with circular (fixed-point) attributes, higher-order attributes, and collection attributes. In this paper we present wait-free concurrent attribute evaluation algorithms for Circular RAGs. These algorithms enable interactive queries to be performed with low latency while heavier computations are running.
We design and evaluate a lock-free implementation of our algorithms in Java, for the JastAdd metacompiler. Our implementation can be used without further changes to existing JastAdd-specified compilers, provided they fulfill well-formedness conditions like observationally pure semantic functions. Our evaluation on a JastAdd-specified compiler for the Java programming language shows that our approach is useful for reducing latency, and can give a slight overall speedup.
Tue 24 OctDisplayed time zone: Tijuana, Baja California change
10:30 - 12:00 | |||
10:30 25mTalk | A Formalisation of Parameterised Reference Attribute Grammars SLE DOI | ||
10:55 25mTalk | Concurrent Circular Reference Attribute Grammars SLE DOI | ||
11:20 25mTalk | Ensuring Non-interference of Composable Language Extensions SLE DOI | ||
11:45 15mTalk | A Domain-Specific Controlled English Language for Automated Regulatory ComplianceIndustrial Paper SLE Suman Roychoudhury Tata Consultancy Services Research, Sagar Sunkle Tata Consultancy Services Research, Deepali Kholkar Tata Consultancy Services Research, Vinay Kulkarni Tata Consultancy Services Research DOI |