a ruby1.9 compatible version of dhaka
Ruby
Pull request Compare This branch is 3 commits ahead of foreverman:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.svn
lib
test
CHANGELOG.txt
README
Rakefile
TODO.txt
dhaka.gemspec

README

# An introduction to Dhaka and annotated examples can be found at the project homepage http://dhaka.rubyforge.org.
# For more examples, please look at the tests included in the gem.
#
# When developing lexer specifications and grammars, <tt>require 'dhaka'</tt>. When 
# using compiled lexers and parsers, e.g. in a production situation, 
# <tt>require 'dhaka/runtime'</tt>. This loads a stripped-down version of the gem that
# is the bare-minimum required to run compiled state-machines.
# 
# The following abstract base classes comprise the core of Dhaka:
# = Dhaka::Grammar
# Encodes production rules and precedences. Used by Dhaka::Parser to generate a new parser.
# = Dhaka::Tokenizer
# Provides a DSL for writing hand-coded tokenizers. Processes an input string and returns an Enumerable of tokens, 
# meant for consumption by a Dhaka::Parser or a Dhaka::CompiledParser.
# = Dhaka::LexerSpecification
# Use this to specify regular expression patterns and actions for the various types of tokens in the language. Used by Dhaka::Lexer
# to generate a lexer for a language.
# = Dhaka::Evaluator
# Encodes evaluation rules for performing syntax-directed translation. Accepts a parse-tree generated by a Dhaka::Parser or 
# Dhaka::CompiledParser and recursively evaluates it.