Ruby gem to generate finite automaton implementation from a DSL description