[Haskell] class assosiated types, via GADTs.
k.schupke at imperial.ac.uk
Tue Feb 15 06:21:58 EST 2005
John Meacham wrote:
>The main advantage of this translation over the one in the paper is that
>it is not intertwined with the dictionary generation and typeclass
>desugaring code, which is pretty hairy to begin with. Rather it is an
>orthogonal transformation so hopefully will be easier to implement
>without touching too much of ghcs internals.
Yes, however my worry is that we are heading towards the proliferation
of not very well thought out overlaping extensions (in the sense that
how the extensions fit with other proposed and existing extensions does
not seem well thought out). If the functionality duplicates something
already achievable using functional dependancies, then what is the point
of yet another extension to the language. I would rather have a small
set of powerful tools, than an expansive set of single purpose gadgets.
In my opinion a lot of these things could be implemented as syntactic
sugar ontop of fundeps (making it easier to read). Template-Haskell
could be used to generate the required classes from a simplified syntax
without altering the compiler at all.
More information about the Haskell