Irony - Language Implementation Kit

Irony is a development kit for implementing languages on the .NET platform. It uses the flexibility and power of the 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 a C# class to control the parsing process.

The Irony project is hosted on CodePlex.

Table of contents

Introduction

25% developed  as of Aug 18, 2010Basic Tutorial

Grammar

25% developed  as of Jun 13, 2010Overview
25% developed  as of Jun 13, 2010Terminals
25% developed  as of Jun 13, 2010Non Terminals

Parsing

0% developed  as of Jun 10, 2010Overview
  • Scanner
  • Parser
  • Parse Tree

Abstract Syntax Tree

0% developed  as of Jun 10, 2010Overview
  • Base ASTNode
  • Custom AST Nodes

Interpreter

Runtime

Do not fill out yet as code base is subject to major changes in this area!

Compilation

Visual Studio Integration

0% developed  as of Jun 19, 2010Overview

Dynamic Language Runtime (DLR) Integration

0% developed  as of Jun 19, 2010Overview
Last modified on 18 July 2011, at 09:50