A*: a language for implementing language processors
- 17 December 2002
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
A* is an experimental language designed to facilitate the creation of language-processing tools. It is analogous either to an interpreted yacc with Awk as its statement language, or to a version of Awk which processes programs rather than records. A* offers two principal advantages over the combination of lex, yacc, and C: a high-level interpreted base language and built-in parse tree construction. A* programmers are thus able to accomplish many useful tasks with little code. This paper describes the motivation for A*, its design, and its evolution. Experience with A* is described, and then the paper concludes with an analysis of A*'s principal weaknesses.Keywords
This publication has 7 references indexed in Scilit:
- Introduction to the ISO specification language LOTOSPublished by Elsevier ,2003
- DML-a meta-language and system for the generation of practical and efficient compilers from denotational specificationsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- A formal language for writing data base integrity constraintsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A technique for drawing directed graphsIEEE Transactions on Software Engineering, 1993
- The Synthesizer GeneratorPublished by Springer Nature ,1989
- Building application generatorsIEEE Software, 1988
- A Complexity MeasureIEEE Transactions on Software Engineering, 1976