| Language Meta-Model Specification |
|---|
Table of Contents
→ Notation used in the following
Specifying a Language Meta-Model
The predicates documented here are used to define a language's syntax, in terms of the meta-model of the AST used to represent programs of the language. They describe the program elements avialable as logic facts to programmers writing model analyses or conditional transformations (CTs) for this language.
Predefined
Predefined predicates, expressing naming conventions for AST node arguments:
Self-Defined
Predicates that language plugin writers must define.
These predicates are used by StarTransformer
- to check syntactic correctness (of CTs and of the internal representation generated by a parser)
- to define the language-independent access to and language-independent transformation of ASTs
A StarTransformer plugin for the language language is expected
- to be called
st.language - to declare the above predicates as
multifilepredicates - to provide corresponding predicate definitions that mention
languageas the language argument


