[ANN] antlr3 1.3.1 ( improved ANTLR v3 for Ruby )

K

Kyle

I haven't really advertised my project on ruby talk before, so I figured it's
time to give it a go.

If you're not familiar with ANTLR ( ANother Tool for Language Recognition:
http://www.antlr.org ), it is a general language recognizer generator, like
Bison, YACC, etc... It constructs lexers, parsers, and tree-parsers that use a
LALR recognition strategy from a grammar specification written with a fairly
clean and readable syntax. While the tool itself is written in Java, it
permits code generation in a number of different target languages, including
Ruby.

If you are familiar with ANTLR, you are probably also aware that the built-in
Ruby output functionality is severely limited (with all due respect to the
developers, of course). Basically, the Ruby target permits parser and lexer
generation, with limitations and lacking the majority of ANTLR's interesting
features, such as AST construction and grammar delegation ( `import'
statements ).

For a while, I've been working on a new, fully-featured replacement for
ANTLR's built-in Ruby target. My package implements all of ANTLR's features,
including grammar debugging, AST output, grammar profiling, tree parsing,
token stream rewriting -- pretty much everything except for the 'template'
output mode. Currently, I'm working on implementing a template output mode
using ERB, instead of porting the StringTemplate language.

I'm definitely open to feedback/suggestions from end-user developers, and I'm
open to collaboration and contribution. While everything runs cleanly on my
system, the library could use more wide-spread usage and testing to catch bugs
I may have missed.

Bare-bones library and ANTLR jar:
gem install antlr3

rubyforge: http://rubyforge.org/projects/antlr3
gemcutter: http://gemcutter.org/gems/antlr3

Full development repository:
git clone git://github.com/ohboyohboyohboy/antlr3.git

github: http://github.com/ohboyohboyohboy/antlr3


* I'm fairly new to ruby talk, so I'm not exactly sure if there's a more
appropriate way to advertise the project -- so all apologies if I'm breaking
some mailing-list etiquette with which I'm unfamiliar.

Thanks,

Kyle Yetter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,736
Latest member
zacharyharris

Latest Threads

Top