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 Oct Times are displayed in time zone: Tijuana, Baja California change
|10:30 - 10:55|
|10:55 - 11:20|
|11:20 - 11:45|
|11:45 - 12:00|
Suman RoychoudhuryTata Consultancy Services Research, Sagar SunkleTata Consultancy Services Research, Deepali KholkarTata Consultancy Services Research, Vinay KulkarniTata Consultancy Services ResearchDOI