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
|A Formalisation of Parameterised Reference Attribute Grammars|
|Concurrent Circular Reference Attribute Grammars|
|Ensuring Non-interference of Composable Language Extensions|
|A Domain-Specific Controlled English Language for Automated Regulatory ComplianceIndustrial Paper|
Suman Roychoudhury Tata Consultancy Services Research, Sagar Sunkle Tata Consultancy Services Research, Deepali Kholkar Tata Consultancy Services Research, Vinay Kulkarni Tata Consultancy Services ResearchDOI