[Haskell-cafe] Re: Comments from OCaml Hacker Brian Hurt

Gracjan Polak gracjanpolak at gmail.com
Fri Jan 16 08:40:59 EST 2009

Ketil Malde <ketil <at> malde.org> writes:
> On Thu, Jan 15, 2009 at 07:46:02PM +0000, Andrew Coppin wrote:
> > If we *must* insist on using the most obscure possible name for  
> > everything, 
> I don't think anybody even suggests using obscure names.  Some people
> insist on precise names.  

Ketil, to second your here: "Appendable" *is* an obscure name! Even more
than Monoid.

I remember my early CS algebra courses. I met cool animals there: Group,

Ring, Vector Space. Those beasts were very strong, but also very calm at
the same time. Although I was a bit shy at first, after some work we
became friends.

When I first saw Monad, Monoid, Functor and others, I wasn't scared.
They must be from the same zoo as my old friends! Some work is needed
to establish a connection, but it is doable. And it is very rewarding,
because then you get very powerful, dependable friends that give you
strong guaranties!

Now compare ICollecion, IAppendable or the alike. These are warm, and
fuzzy, and "don't hurt me please", so the guaranties they give depend
on mood or something as "intuitive" as phase of the moon. And don't
feed corner cases to them, because they may scratch you!


Warm, fuzzy: under defined, intuitive, sloppy...
Cool, strong: well defined, dependable, concrete...

There are plenty of warm, fuzzy languages out there, if you want Java,
you know where to find it. And *real programmers* seem to look for
something more these days.

I need to sleep well knowing my programs work. I need powerful, strong
abstraction. I use Haskell wherever possible because it is based on
the strongest thing we have: MATHS! Keep it that way!

Monads aren't warm, they are COOL!


More information about the Haskell-Cafe mailing list