This is a home page for the Extensible Term Language. The ETL is a high-level language definition framework that support defining languages that are designed the using the following concepts:
The framework is intended to support creation of the new languages. It is not possible to write the parser for C using it, but it is easy to create a grammar for new C-like language.
There are two primary advantages of this framework:
It is high level. The language designer defines language using concepts like contexts, operators, statements, blocks, expressions, etc. This is one level higher than EBNF-based notations uses by most parser generators.
The framework is focused on extensibility. It is very easy to extend the existing grammar adding new operators or statements or replacing old ones. It is also possible to reference contexts in other grammars. It is also possible to use the extensibility constructs inside the grammar as well.
The current version of the framework is 0.2.1a released on 2009-01-20. The release contains java implementation of the parser, tutorial, and samples. There is also incomplete language specification.
Project page on sf.net. You could use it for reporting bugs and discussing the framework.
Download (xmlout versions contains pregenerated xml sample files that could be recreated later using provided ant script).
Browse 0.2.1a Documentation online. (Note that outline AST outline pages has been regenerated with the new outline stylesheet from svn, so they do not match release exactly. The stylesheet will be availalbe in the next release, or you could get it from svn now.)
This project is hosted on