[Haskell-cafe] Haskell.org GSoC

Max Bolingbroke batterseapower at hotmail.com
Wed Feb 18 04:43:25 EST 2009

2009/2/18 Sterling Clover <s.clover at gmail.com>:
> Something that hit me tonight: Last GSoC gave us GHC compiler plugins. We
> have examples, but no documented significant uses, suitable for production
> code. Plugins, in essence, as I understand them, let us extend the type
> system in useful ways. Haskell has libraries for units[1], but no
> lightweight (i.e. without simulated dependent types or a dsl) way to embed
> units in Haskell calculations. Units in a functional language are possible,
> and implemented in, e.g., F# [2]
> The punchline: With GHC plugins, it should be possible, and reasonable, to
> add a proper unit system for Haskell.

Alas, GHC plugins cannot change the type system - only meddle with the
compilation strategy or analyse the code and suchlike. I'm working
with Simon Peyton Jones to get plugins integrated fully into GHC
(parts of it have been commited already) but we're both busy and so
progress is slow. I don't think any GSoC projects should take a
dependency on it being both integrated into GHC and stable in time for
the summer.

I agree this would be a cool feature :-). Fully pluggable compilers
are hard work though, and would require at the very least very large
amounts of GHC refactoring.


More information about the Haskell-Cafe mailing list