Irony is a new-generation .NET compiler construction kit.
It utilizes the full potential of c# 2.0 and .NET Framework to implement a completely new and streamlined technology of compiler construction.
Unlike most existing yacc/lex-style solutions Irony does not employ any scanner or parser code generation from grammar specifications written in proprietary meta-language. In Irony the target language grammar is coded directly in c# using operator overloading
to express grammar constructs. Irony's scanner and parser modules use the grammar encoded as c# class to control the parsing process. See
expression grammar sample
for a complete example of custom grammar and a working parser based on it.
The initial release contains implementation of compiler front-end modules - scanner and LALR(1) parser. We provide several test grammars and parser implementations based on them: a grammar for parsing arithmetic expressions, and simplified grammars for Scheme,
Python and Ruby.
Windows XP/Vista, .NET Framework 2.0, Visual Studio 2005/Express
Demo Running Instructions