[Haskell-cafe] [GSoC] Plugins for GHC
batterseapower at hotmail.com
Fri Mar 21 18:23:37 EDT 2008
I'm interested in working on a plugins system for the Glasgow Haskell
Compiler. The idea here is to allow third parties to add more
capabilities to the compiler in a way that doesn't involve messing
around with modifying GHC itself. Potential use cases are:
* Allow Haskell code to be selectively run on GPUs
* Idiosyncratic application-specific optimization passes
* And whatever clever ideas the community comes up with!
This project has previously been proposed as an Microsoft Research
(http://hackage.haskell.org/trac/ghc/wiki/Internships).I have a
preliminary wiki page with details at
I'd particularly like to get feedback from the list on:
* Other design goals people would like to see
* Improvements to the proposed (very half-baked!) user interface
* Other hooks people think they might like to have into the compiler
* Interested mentors. Simon PJ has indicated he would be interested in
mentoring this, but there might be other projects that need him more?
This project would satisfy a dependency that Manuel mentioned in
implement an "array DSL" for GPUs in Haskell. It would mean GHC taking
a dependency on hs-plugins
(http://www.cse.unsw.edu.au/~dons/hs-plugins/), as that's our current
strategy to allow GHC to dynamically link with the plugins.
A little about my experience with GHC: this year I worked on
implementing comprehensive comprehensions
my final year undergraduate project, supervised by Simon PJ. I have
subsequently implemented a few other patches, adding some core-level
optimizations / bug fixes (some of which are pending review).
Thanks in advance for your comments!
More information about the Haskell-Cafe