[Haskell] ANNOUNCE: C-- compiler frontend release
Robert Dockins
robdockins at fastmail.fm
Thu Jan 26 22:44:27 EST 2006
Fellow Haskellers and C-- enthusiasts,
I am pleased to announce the initial alpha release of a C-- frontend
(parser, pretty printer, and semantic checker) written in Haskell.
My goal when beginning this project was to create a modular frontend
that could be used both by people writing and by those targeting C--
compilers. This implementation attempts to follow the C-- spec as
exactly as possible. Please enjoy.
You can get the source from the darcs source repository with the
following command:
darcs get --partial --tag '0.1' http://www.eecs.tufts.edu/~rdocki01/cmm/
or you may simply browse the source at the above address.
Cmm Frontend
-========================-
== What is it?
This package is a C-- frontend, including a lexer (scanner), parser,
pretty-printer and semantic checker. It also includes a unit test
suite.
== Why do I care?
The Cmm frontend allows you to target C-- easily by using the pretty
printer
or to fill in the backend of a C-- compiler without having to deal
with the
uninteresting details of parsing.
== How is it licensed?
The Cmm frontent is avaliable under a BSD3 license. See the LICENSE
file for
details.
== How do I build it?
Cmm frontend uses a Cabal build system. The follwing commands
assume you have a haskell interpreter in your system
path named 'runhaskell'. All commands are run from
this directory.
To install for the whole system:
runhaskell Setup.hs configure
runhaskell Setup.hs build
runhaskell Setup.hs install
To install for a single user:
runhaskell Setup.hs configure --prefix=/home/<username>
runhaskell Setup.hs build
runhaskell Setup.hs install --user
To build the API docs:
runhaskell Setup.hs haddock
== Who is responsable for this mess?
You can send bug reports, rants and comments to:
Robert Dockins <robdockins AT fastmail.fm>
Rob Dockins
Speak softly and drive a Sherman tank.
Laugh hard; it's a long way to the bank.
-- TMBG
More information about the Haskell
mailing list