| Short description: |
Rockit |
| Category: |
Application/Compiler |
| Status: |
Useable but still changing |
| Created: |
2001-11-22 22:12:49 GMT |
| Last update: |
- |
| Owner: |
Robert Feldt
(Projects of this owner) |
| Homepage: |
http://rockit.sourceforge.net |
| Download: |
http://rockit.sourceforge.net
|
| License: |
LGPL |
| Dependency: |
|
| Description: |
An easy-to-use, object-oriented compiler construction toolkit written in and generating code for Ruby. Currently focusing on the "front-end" phases of compiler construction.
Main features:
* Grammars written in Extended Backus-Naur Form. (=> use *, ? and + ops).
* Generates both lexer and parser.
* Parsers will return abstract syntax trees (AST).
* Generated AST's support simple tree-walking using iterators.
* "Ruby-friendly" with for example Array's for repetition, Regexp's
for tokens etc.
* More advanced parser than yacc's LaLr(1) (If you're curious its called
"Generalized LR parsing with scanner forking"!)
* AST's can be dumped to postscript (if you have graphviz/dot)
* Reports when the grammar is ambigous and shows the alternative ways
to parse the sentence. Helps you resolve ambiguities.
* Associativity and precedence can be specified based on productions/rules
in the grammar (NOT on operators which is less "portable").
|