
On Sun, Jan 8, 2012 at 15:55, Christoph Breitkopf < chbreitkopf@googlemail.com> wrote:
On Sun, Jan 8, 2012 at 9:25 PM, Brent Yorgey
wrote: On Fri, Jan 06, 2012 at 10:51:58AM +0000, Steve Horne wrote:
If I specify both extensions (-XMultiParamTypeClasses and -XFlexibleInstances) it seems to work, but needing two language extensions is a pretty strong hint that I'm doing it the wrong way.
Not necessarily. These two extensions in particular (and especially the second) are quite uncontroversial.
http://hackage.haskell.org/trac/haskell-prime/wiki/MultiParamTypeClassesDile...
does not sound "uncontroversial" to me. That's why I avoided them so far.
MPTCs are not controversial. They're also of limited (but extant) usefulness without an additional extension; and, while there is "controversy" there, it's not especially relevant until type families are stabilized. They could in theory go into the standard *now*; they'd just be of limited use until functional dependencies vs. type families is settled. (Also, de facto I think it's already more or less been decided in favor of type families, just because functional dependencies are (a) a bit alien [being a glob of Prolog-style logic language imported into the middle of System Fc] and (b) [as I understand it] difficult to verify that the code in the compiler is handling all the potential corner cases right [mainly because of (a)]. In any case, if the code in question doesn't happen to need either functional dependencies or type classes, the controversy doesn't touch it. -- brandon s allbery allbery.b@gmail.com wandering unix systems administrator (available) (412) 475-9364 vm/sms