
On Mon, 20 Aug 2012, Francesco Mazzoli
Hi list(s),
I've been hooked on Haskell for a while now (some of you might know me as bitonic on #haskell), and I find myself to decide on a project for my masters thesis.
Inspired by the David Terei's master thesis (he wrote the LLVM backend), I was wondering if there were any projects requiring similar effort that will benefit the Haskell community.
-- Francesco * Often in error, never in doubt
The map from Source Code to Executable is one of the Great Functors of Programming. Lisp has the advantage that this functor is visible and the objects and maps of the domain category Source Code are easy to pick up and modify. I think ghc may be instructed to output a textual representation of the "Core" code produced on the way to the executable from Haskell source code. But this representation is, in part, inadequate: 1. The representation is not faithful. Thus, for example, we cannot feed the textual representation of Core into the next part of the Haskell compiler pipeline and get the same executable we would get by running ghc on the Haskell source code. 2. The textual syntax is not sufficiently regular, so that maps in the Source Code category, Core Variant, are not as easy to code as they might be. Of course, I write Lisp, so if you improved the Core side-pipe I could easily continue to write sexps, and then have them transformed to a Haskell executable. oo--JS.