<br>Don Stewart:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">tomahawkins:<br>
<div>> A few years ago I attempted to build a Haskell hardware compiler<br>
> (Haskell -> Verilog) based on the Yhc frontent. At the time I was<br>
> trying to overcome several problems [1] with implementing a hardware<br>
> description language as a light eDSL, which convinced me a proper<br>
> compiler may be a better approach. Yhc was recommended as a good<br>
> starting point since it had a simpler IR compared with GHC -- at least<br>
> at the time.<br>
><br>
> I am considering restarting this effort, but this time to target hard<br>
> realtime embedded code. What is the recommended compiler to start<br>
> from? I need an IR that is post type checking with as much desugaring<br>
> as possible, and a code base that is relatively easy to splice and<br>
> build.<br>
><br>
> My other requirement is not to be bound to IO () for 'main'. The top<br>
> level will be a monad, but with different semantics than IO. I would<br>
> also like to reuse the standard library, with exception to the values<br>
> related to IO.<br>
><br>
> What are my options?<br>
<br>
Have you looked at Clash, the GHC to VHDL compiler?<br>
</div></blockquote></div><br>Links are always useful:<br><br> <a href="http://clash.ewi.utwente.nl/" target="_blank">http://clash.ewi.utwente.nl/</a><br> <a href="http://hackage.haskell.org/package/clash" target="_blank">http://hackage.haskell.org/package/clash</a><br>
<a href="http://dutchhug.nl/static/dutchhugday-2010/clash.pdf" target="_blank">http://dutchhug.nl/static/dutchhugday-2010/clash.pdf</a><br> <a href="http://wiki.clean.cs.ru.nl/images/8/86/Christiaan-from-haskell-to.pdf">http://wiki.clean.cs.ru.nl/images/8/86/Christiaan-from-haskell-to.pdf</a><br>
<br>Sean<br>