is a development kit for implementing languages on .NET platform. Unlike most existing yacc/lex-style solutions Irony does not employ any scanner or parser code generation from grammar specifications written in a specialized 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 the expression grammar sample
for an example of grammar definition in c# class, and using it in a working parser. Download contents
The download zip contains core Irony libraries implementing a parsing engine, an interpreter, a number of sample grammars, unit test projects, and Grammar Explorer tool for viewing and debugging your languages (see picture below).
We provide multiple sample grammars for languages like GW Basic, Java, c#, Scheme, SQL, JSON and some others. Irony includes a ready-to-use expression evaluator that can be easily plugged-in into a .NET application.System Requirements
Windows 7, .NET Framework 4.0, Visual Studio 2010Irony on the WebIrony presentation at LangNET 2009 symposiumScott Hanselman about Irony. Writing your first Domain-Specific LanguageA Google-like Full Text Search engine based on Irony parser.Writing your first Visual Studio Language ServiceWriting a calculator in c# using IronyShakespeare Language Compiler using IronyMore informationExpression Grammar sampleContributorsWilling to Contribute?Demo Running InstructionsWikibook: Irony - Language Implementation Kit
- everybody is welcome to contribute.My blog and other projectsIrony blogVITA Application Framework