EBNF Library

  •        0

The EBNF Library scans strings with respect to a given EBNF grammar and returns a tree structure for the matches. It is an easy-to-use tool for scanning complex input.




Related Projects


C3PO is a software synthesis tool that provides a solution for building maintainable, reliable and robust software infrastructures and/or compiler frontends from a set of attributed grammar rules in EBNF notation.


Python EBNF parser generator for use with mx.TextTools


DParser is a scannerless GLR parser generator based on the Tomita algorithm. It is self-hosted and very easy to use. Grammars are written in a natural style of EBNF and regular expressions and support both speculative and final actions.

Refal51 - Interpretator of Refal program language with user-type templates (EBNF-like form) and dyna

Interpretator of Refal program language with user-type templates (EBNF-like form) and dynamical evalution

Rotfl - Rotfl is LOLCODE interpreter

Rotfl / LolCodeISLol (Lol Code Interpreter Sucks, LOL!) is a lame interpreter written in C#. Based on EBNF rules and actually very error tolerant. Using SLK generated parser in backend.

EBNF Visualizer

... visualizes EBNF (Extended Backus Naur Form). Therefore an .ebnf File is required, which contains rules written in EBNF. The program parses the rules, visualizes them as syntax diagrams and is able to generate .gif and .emf files for further use.

Ebnf Studio

Simple editor for managing and editing ebnf grammar files with included tools for visualizing, formatting, error chechking and etc


ebnf2yacc is a tool to help write yacc parsers/compilers. It takes as input a grammar written in bnf (ebnf support is planned), and outputs a c++ abstract syntax tree that supports the visitor pattern, along with a yacc parser that builds the tree.

Ell - Embedded LL library. A light C++ library to embbed EBFN grammars in your code.

Ell is pure-header library to write EBNF grammars as C++ code. It eases the development of parsers or similar applications, while removing the need to write a lexer. Ell is not a tool to generate parsers (like ANTLR) : the grammar you write is directly embedded into your C++ code. The core library is light, headers-only and written using generation templates technique to achieve a fastest execution. The service provided by Ell is very similar to what Boost Spirit provides, but with a simpler obj