ASDL - An Object-Oriented Specification Language for Syntax-Directed Environments
1987
ASDL is a formalism to specify syntax-directed programming environments. The language is the heart of a language-independent kernel system, which is based on an environment database and offers a uniform user interface. ASDL is designed to ease the extension of the kernel system by new languages and by new language dependent tools. It unifies concepts of syntax-directed translation and object-oriented programming. This is achieved by identifying syntactic categories with types and translation rules with generic operations on such types. Each type is associated with translation rules, attributes, and relations, which are shared by all instances of the type. Translation rules are recursively defined in terms of other rules and semantic actions. Semantic actions are non-generic imported operations that are defined in a host language. A translation scheme is viewed as an operation that maps its rules over an abstract syntax tree. Translation schemes allow the designer to define traversal strategies, to clip and prune syntax trees and to modify attributes and relations solely in terms of their conceptual representation. An initial prototype of the kernel system was implemented on Lisp machines.
Keywords:
- First-generation programming language
- Homoiconicity
- Very high-level programming language
- Abstract syntax tree
- Language primitive
- Object language
- Programming language
- Natural language processing
- Programming language specification
- Computer science
- Artificial intelligence
- Object (computer science)
- High-level programming language
- Specification language
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
14
References
5
Citations
NaN
KQI