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 predicates, expressing naming conventions for AST node arguments:


Predicates that language plugin writers must define.

These predicates are used by StarTransformer

A StarTransformer plugin for the language language is expected

  • to be called st.language
  • to declare the above predicates as multifile predicates
  • to provide corresponding predicate definitions that mention language as the language argument
Last modified: 2016/04/18 03:19