Attribute grammars: definitions, systems and bibliography
Attribute grammars: definitions, systems and bibliography
The Z notation: a reference manual
The Z notation: a reference manual
Eli: a complete, flexible compiler construction system
Communications of the ACM
Modularity and reusability in attribute grammars
Acta Informatica
Attribute grammar paradigms—a high-level methodology in language implementation
ACM Computing Surveys (CSUR)
Automating first-order relational logic
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Finding bugs with a constraint solver
Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis
Introduction to Attributed Grammars
Proceedings on Attribute Grammars, Applications and Systems
Implementation of Visit-Oriented Attribute Evaluators
Proceedings on Attribute Grammars, Applications and Systems
Exploring the Design of an Intentional Naming Scheme with an Automatic Constraint Analyzer
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Hi-index | 0.00 |
Attribute Grammars are the specification language of many tools that automatically generate programming language implementations. We consider the problem of verifying properties of attribute grammar specifications, particularly properties that are not well supported by existing tools. Rather than propose methods for extending existing tool implementation techniques, we propose the use of off-the-shelf formal methods tools as the basis for attribute grammar verification. Off-the-shelf tools can provide significant expressive power at a much lower cost than extending an existing evaluator generator. As a specific example, we describe how to use the Alloy model finding and checking tool to verify properties of remote attribution constructs in the LIDO attribute grammar specification language. A naive application of this approach has significant performance overheads; we discuss techniques for limiting the scope of the problems that are solved to make the approach tractable.