Revive External Core parser
authorTim Chevalier <chevalier@alum.wellesley.edu>
Sat, 29 Mar 2008 22:39:48 +0000 (22:39 +0000)
committerTim Chevalier <chevalier@alum.wellesley.edu>
Sat, 29 Mar 2008 22:39:48 +0000 (22:39 +0000)
commit6e93da5e0a775b2bfb9c9f2bd31a36cc828521cb
treeba1bac9b47d08ef73e3641b6d9ad15d3ad885e8d
parent5d1ba397950bd700768933cc573f04a804f6e32a
Revive External Core parser

Huzzah, the External Core parser will now parse External Core generated by
the HEAD.

Most notably, I rewrote the parser in Parsec, but the old Happy version
remains in the repository.

I checked all the nofib benchmarks and most of the ghc-prim, base and integer
libraries to make sure they parsed; one known bug:
  - Strings like "\x0aE", in which a hex escape code is followed by a
    letter that could be a hex digit, aren't handled properly. I'm
    investigating whether this is a bug in Parsec or expected behavior.

The checker and interpreter still don't work, but should compile.

Please mess around with the parser, report bugs, improve my code, etc.,
if you're so inclined.
utils/ext-core/Check.hs
utils/ext-core/Core.hs
utils/ext-core/Driver.hs
utils/ext-core/Interp.hs
utils/ext-core/Makefile
utils/ext-core/ParseGlue.hs
utils/ext-core/ParsecParser.hs [new file with mode: 0644]
utils/ext-core/Parser.y
utils/ext-core/Prep.hs
utils/ext-core/Printer.hs
utils/ext-core/README