*** Welcome to piglix ***

Ragel

Ragel
Developer(s) Adrian Thurston
Stable release
6.9 / October 14, 2014; 2 years ago (2014-10-14)
Operating system Unix-like, Windows
Type State machine compiler
License MIT License
Website www.complang.org/ragel/

Ragel is a finite-state machine compiler and a parser generator. Initially Ragel supported output for C, C++ and Assembly source code, and was subsequently extended to support Objective C, D, Go, Ruby, and Java. It supports the generation of table or control flow driven state machines from regular expressions and/or state charts and can also build lexical analysers via the longest-match method. Ragel specifically targets text parsing and input validation.

Ragel supports the generation of table or control flow driven state machines from regular expressions and/or state charts and can also build lexical analysers via the longest-match method. A unique feature of Ragel is that user actions can be associated with arbitrary state machine transitions using operators that are integrated into the regular expressions. Ragel also supports visualization of the generated machine via graphviz.

Ragel visualisation.png


...
Wikipedia

...