Skip to content
All-around tools for compilation development
nesC Haskell TeX CSS C# HTML Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cli
doc
extra-doc
hackage
res
src
test
trials
.gitattributes
.gitignore
CNAME
LICENSE
README.md
Setup.hs
index.html
platinum-parsing.cabal
stack.yaml

README.md

platinum-parsing

www.platinum-parsing.org

Platinum Parsing is an all-around solution for conceiving, developping and building a compiler or an interpreter, or just a part of it. It's composed of two parts: the Framework, written in Haskell, and the CLI (Command Line Interface), exposing the functionalities of the Framework.

Features

  • Purely functional, written in Haskell
  • Generic approach to compilation
  • Full EBNF grammar support
  • Tokens definition with built-in RegEx
  • Grammar validation on source file
  • Dynamic AST generation
  • LALR table and DFA generation
  • Built-in lexer and parser
  • Customisable template export
  • CLI and Atom integration
  • And more ... *

* Platinum Parsing is a recent project aimed to grow, you can find development axis in the Issues menu.

Getting started

Platinum Parsing is built with the famous Haskell Tool Stack, you will need to install it before continuing.

NB: if you prefer to use cabal instead of stack, feel free to do so.

Platinum Parsing is available on Hackage, thus you can install it with the command:

$ stack install platinum-parsing

This will cause the CLI to be accessible in your terminal, try: $ pp --help

If you want to use the Framework directly in your Haskell project, add to your <project-name>.cabal file the following line, and run a $ stack build afterwards:

build-depends: platinum-parsing

Last option is to clone this repository and build the project by yourself:

$ git clone git@github.com:chlablak/platinum-parsing.git
or
$ git clone https://github.com/chlablak/platinum-parsing.git

$ cd platinum-parsing
$ stack init
$ stack build

Further reading

  • Platinum Parsing has an Atom integration (plugin) for ease of development, available here.
  • The library documentation is available on the Hackage package.
  • More documentation (examples, references, ...) can be found in the doc/ folder.

Contributing

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

You can’t perform that action at this time.