Don Stewart:
tomahawkins:
> A few years ago I attempted to build a Haskell hardware compiler
> (Haskell -> Verilog) based on the Yhc frontent.  At the time I was
> trying to overcome several problems [1] with implementing a hardware
> description language as a light eDSL, which convinced me a proper
> compiler may be a better approach.  Yhc was recommended as a good
> starting point since it had a simpler IR compared with GHC -- at least
> at the time.
>
> I am considering restarting this effort, but this time to target hard
> realtime embedded code.  What is the recommended compiler to start
> from?  I need an IR that is post type checking with as much desugaring
> as possible, and a code base that is relatively easy to splice and
> build.
>
> My other requirement is not to be bound to IO () for 'main'.  The top
> level will be a monad, but with different semantics than IO.  I would
> also like to reuse the standard library, with exception to the values
> related to IO.
>
> What are my options?

Have you looked at Clash, the GHC to VHDL compiler?

Links are always useful:

  http://clash.ewi.utwente.nl/
  http://hackage.haskell.org/package/clash
  http://dutchhug.nl/static/dutchhugday-2010/clash.pdf
  http://wiki.clean.cs.ru.nl/images/8/86/Christiaan-from-haskell-to.pdf

Sean