Declarative and deterministic parsing of AspectJ
2009-03-18
Loading...
View/Download File
Persistent link to this item
Statistics
View StatisticsJournal Title
Journal ISSN
Volume Title
Title
Declarative and deterministic parsing of AspectJ
Alternative title
Authors
Published Date
2009-03-18
Publisher
Type
Report
Abstract
AspectJ, a language that provides aspect constructs in Java, has historically proven difficult to parse using traditional methods. The AspectJ Bench Compiler (abc) uses a traditional LALR(1) parser, but must use a custom-built, non-declarative scanner that switches modes based on whether the parse is in an aspect or not. This allows the parser to reserve different sets of keywords against the identifiers.
More recently, Visser et al. have devised a declarative parser for AspectJ in their nondeterministic scannerless-GLR framework --- although they have to add a new feature, grammar mix-ins, to handle the problem of the different sets of keywords.
We have adapted the LALR(1) grammar used in abc to extend the Java grammar in our ableJ framework. As it happens, with a context-aware scanner, the abc version of AspectJ can be parsed deterministically and declaratively, due to the fact that a context-aware scanner can tell whether it is scanning within an aspect or not.
Keywords
Description
Related to
Replaces
License
Series/Report Number
Technical Report; 09-007
Funding information
Isbn identifier
Doi identifier
Previously Published Citation
Other identifiers
Suggested citation
Schwerdfeger, August. (2009). Declarative and deterministic parsing of AspectJ. Retrieved from the University Digital Conservancy, https://hdl.handle.net/11299/215794.
Content distributed via the University Digital Conservancy may be subject to additional license and use restrictions applied by the depositor. By using these files, users agree to the Terms of Use. Materials in the UDC may contain content that is disturbing and/or harmful. For more information, please see our statement on harmful content in digital repositories.