Developer(s) | Adrian Thurston[1] |
---|---|
Stable release | 7.0.4[2]
/ 15 February 2021 |
Preview release | 7.0.4
/ February 16, 2021 |
Repository | |
Written in | C++ |
Operating system | Unix-like, Windows |
Type | State machine compiler |
License | "Ragel 6 remains under GPL v2 [generated code] covered by the MIT (or GPL v2)".[3] Ragel 7: MIT License |
Website | www |
Ragel is a finite-state machine compiler and a parser generator. Initially Ragel supported output for C, C++ and Assembly source code,[4] later expanded to support several other languages including Objective-C, D, Go, Ruby, and Java.[5] Additional language support is also in development.[6] It supports the generation of table or control flow driven state machines from regular expressions[7] and/or state charts and can also build lexical analysers via the longest-match method. Ragel specifically targets text parsing and input validation.[8]