http://www.codeplex.com/irony
Irony
is a development kit for implementing languages on .NET platform. It
uses the flexibility and power of c# language and .NET Framework 3.5 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 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.