Irony (framework)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Developer(s) Roman Ivantsov
Written in C#
Operating system Cross-platform
Platform .NET Framework
License MIT License

Irony is a parser generator framework for language implementation on the .NET platform. Unlike most existing yacc/lex-style solutions, it does not employ code generation of a scanner/parser from grammars written in an external DSL. The grammars for the target language are coded directly in C# instead. The framework implements a LALR(1) parser.[1]


Terminal and nonterminal symbols and production rules are defined in an object oriented flavor of the EBNF using operator overloading. The framework allows for the generation of an abstract syntax tree which can be traversed using the visitor pattern or evaluated using an interpreter.


See also[edit]


External links[edit]