The Spoofax Language Workbench


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.