Platinum Parsing

What is PP ?

Platinum Parsing is an all-around solution for conceiving, developping and building a compiler or an interpreter, or just a part of it.

It brings many tools and there is no specific procedure to follow, you just choose which part you need and make your stuff.

This project took place at HEIG-VD as an end-term project. Scroll down for a more in-depth presentation of PP.

List of features

  • Purely functional, written in Haskell
  • Generic approach to compilation
  • Full EBNF grammar support
  • Grammar validation on source file
  • LALR table and DFA generation
  • Customisable template export
  • CLI and Atom integration
  • And more ... *

* Platinum Parsing is a recent project aimed to grow, you can find development axis here.


Platinum Parsing was conceived in three separate parts, each bringing a different approach for you.

The Framework ...

... is the core of PP. It's a library implementing a large variety of functions for developping compiler-oriented programs. From EBNF rules extraction to lexer creation and more.

Learn more about the Framework

The Command Line Interface ...

... is a terminal program. It exposes functionnality of the Framework, so you don't have to write any Haskell if you don't want to.

Learn more about the CLI

The Atom package ...

... is an integration of the CLI in the famous text editor Atom. Allowing you to manage your PP projects without even touching the CLI or the Framework.

Learn more about the Atom integration

Getting started

All informations concerning installation and usage are in the repositories:

If you have any question, proposition or contribution, feel free to use the Issues menu on GitHub.