> I have nearly the same plan: I want to compile a restrictive form of
> Haskell to constant time and space C code for hard realtime embedded
> targets.  Except I need a top level monad with different semantics
> than IO.
Which language is that? ImProve?

> Wouldn't a fake driver (fakeRun :: Something -> IO ()) at least
> simplify the problem?  It would prevent you from having to modify GHC
> to handle a different top level type.  And during your evaluation of
> Core, you would simply ignore fakeRun.
I'm not really bothered about the type of main, since I can always just
pick a different unused name for my entry point. In fact, that would
allow me to compile programs both as normal executables for functional
testing (using your fake driver solution) and still pass the Core to the
rest of the pipeline.

Gergely

-- 
http://www.fastmail.fm - Email service worth paying for. Try it for free

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to