The Spoofax Language Workbench

_images/Spoofax.svg

The Spoofax Language Workbench supports the definition of all aspects of textual languages using high-level, declarative meta-languages, including

  • The SDF3 syntax definition formalism
  • The NaBL name binding language
  • The Stratego transformation language
  • The DynSem dynamic semantics specification language
  • The ESV editor services configuration language

From a language definition using these meta-languages, Spoofax generates full-featured Eclipse and IntelliJ editor plugins, as well as a command-line interface. The generated editors include syntax highlighting, syntax checking, parse error recovery, error markers for syntactic and semantic errors, and custom operations, such as invoking an interpreter or compiler.

Full Table of Contents

Language Development

Core API