I am a long-time member of the ANTLR community, starting with PCCTS, and over the years have spent a lot of time working on the problem of rapid application development for language processors. Since discovering a linear GLL recognition algorithm, I have been focused on implementing that inside of a “compiler compiler” toolkit that implements the RAD technologies I have developed. An early access version licensed for evaluation purposes and manual can be found at www.transmogrifiers.com. At the moment, it is not up to handling general-purpose language grammars—I discovered that after starting work on a Java translator—but will handle smaller grammars for tool development. General purpose language grammars turn out to have a degree of multi-level recursion that really slows the process of recursion analysis (expression grammars become entangled with other instances of recursion) and internal redundancies that need to be dealt with. I have fixes for both of these problems and should have those implemented soon.
The RAD technologies include automated grammar generation for multi-pass language processing (start with a grammar, annotate it for output, then run it through the tool to generate a grammar that recognizes the output form), an attribute model that makes it possible to do such things as symbol table management and output rewrites, and an annotation for text output that integrates StringTemplate templates with grammar processing. One of the items in the toolkit is a StringTemplate compiler that currently has Java and C++ targets. Grammars are language independent—integration of template technology has that effect.
I’m based out of Los Angeles, and look forward to being a member of this group.
–Loring Craymer