The grm package

[Tags: bsd3, library, program]

Grm takes a grammar specification and generates Haskell bindings. Given a grammar the tool produces an abstract syntax implementation, a Happy parser generator file, and a pretty-printer.


[Skip to ReadMe]

Properties

Versions0.1.0, 0.1.1
Change logNone available
Dependenciesbase (<5), Cabal, cmdargs, directory, filepath, parsec, process, syb (>=0.3), wl-pprint [details]
LicenseBSD3
CopyrightBrett Letner 2011-2012
AuthorBrett Letner <brettletner@gmail.com>
MaintainerBrett Letner <brettletner@gmail.com>
CategoryDevelopment
Source repositoryhead: git clone git://github.com/stevezhee/grm.git
Executablesgrm
UploadedFri Mar 30 23:22:31 UTC 2012 by BrettLetner
Downloads412 total (20 in last 30 days)
Votes
0 []
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for grm-0.1.1

Introducing the grm compiler construction tool.  Grm takes a grammar
specification and generates Haskell bindings.  Grm is essentially a
simplified bnfc which only generates Haskell (bnfc
http://www.cse.chalmers.se/research/group/Language-technology/BNFC/).

Given a grammar the tool produces:
  - an abstract syntax implementation
  - a Happy parser generator file
  - a pretty-printer

Grm also has some library code for lexing and misc. language
development tasks (e.g. unique identifiers).

I use grm heavily in my pec language
compiler. (git@github.com:stevezhee/pec.git and on hackage).  You can
check out pec for example grm usage.

Building
  - type 'make'
  - resolve all hackage dependencies
  - type 'make' again

You can download and install grm via cabal or access the git
repository on github (git@github.com:stevezhee/grm.git).

Any feedback on the design and/or implementation of grm would be
greatly appreciated :)

Thanks,
Brett
brettletner at gmail dot com