[Haskell-cafe] I hate Haskell's typeclasses

David MacIver david.maciver at gmail.com
Sun Apr 20 06:05:38 EDT 2008


On Sun, Apr 20, 2008 at 4:46 AM, Jonathan Cast
<jonathanccast at fastmail.fm> wrote:
>
> On 19 Apr 2008, at 5:02 AM, David MacIver wrote:
>
> > Independently of the rant...
> >
> > On Sat, Apr 19, 2008 at 6:01 AM, Jonathan Cast
> > <jonathanccast at fastmail.fm> wrote:
> >
> > >
> > > > But why do I need to jump through these hoops for a perfectly safe &
> > > > commonly desired operation?
> > > >
> > > >
> > >
> > >  It's called a proof obligation.  Haskell is not here to stop you from
> > > jumping through hoops.  In fact, it is here precisely to force you to
> jump
> > > through hoops.  That's why it's called a bondage and discipline
> language.
> > >
> >
> > Surely it's there to lovingly assist you through the hoops? You can't
> > just force people not to do the wrong thing and expect to get a good
> > statically typed language out of it - you have to make it easier for
> > them to do the right thing.
> >
>
>  I think going through the hoop is paramount in Haskell.  That's why Haskell
> is pure, for example, even though it (still) requires awkward code on
> occasion.  Haskell is certainly designed to make getting through the hoops
> as easy as possible, but never by providing a general way around them.
> (unsafePerformIO notwithstanding).

Sure. I'm just saying, it's more of a "Jump through this hoop and you
shall have moist, delicious cake. And by the way, here's a leg up" set
up. There are rewards for the hoop jumping, and assistance on the way
there (which is more than can be said for a lot of languages which
make you jump through hoops) :-)

I think I might be stretching the analogy slightly.


More information about the Haskell-Cafe mailing list