Overview

UniCC (UNIversal Compiler Compiler) is a LALR(1) parser generator. It
compiles an augmented grammar definition into a program source code
that parses the grammar. Because UniCC is intended to be target-language
independent, it can be configured via template definition files to emit
parsers in nearly any programming language.

UniCC supports parser code generation for the following programming languages so far:

C is fully supported (and reference implementation),

Python is well supported,

ECMAScript is prototyped in a stub, but may come soon.

More target languages can easily be added by creating specific target language templates.

Example

This is the full definition for a four-function arithmetic syntax including their integer calculation semantics (in C).

Documentation

The UniCC User Manual is the ultimative guide and reference for the UniCC parser generator.

It covers a general feature introducion in to UniCC, a beginner's
tutorial guiding into the topic 'parsing' in general and how to
implement parsers with UniCC, a UniCC compiler and language reference
guide and a user's reference relating to the Standard C Parser Template.
As an state-of-the-art example, the compiler for a simple programming
language called XPL is developed alongside the howto guide.

The manual will be continously be updated and extended with more or
detailed information and chapters. Hopefully it answers all of questions
coming up when UniCC shall become the workhorse of your upcoming
compiler project. If not, don't avoid to drop a mail, to get individual
support and help with the UniCC Parser Generator and its subsequent
modules.