The first development version of Ragel 7 has been released. There are some major changes packed into this release.

  • A condition implementation overhaul. Rather than augment the input char with the result of condition evaluation, the input char transition is found, then the condition is evaluated and the transition further refined. This is conditions done right.
  • An intermediate codegen language. It is now possible to add languages without understanding ragel internals. All that is needed is a translation from a simple intermediate psudo-code.
  • NFA features for those hard-to-parse constructs and giant unions. (Supported by Barracuda Networks Inc.)

Target Languages:

C C++ Obj-C C#
ASM D Go Java
Ruby OCaml Crack Rust

Grab it here: ragel-

You'll need these dependencies: