[Haskell-cafe] What's the deal with Clean?

ajb at spamcop.net ajb at spamcop.net
Tue Nov 3 22:15:44 EST 2009

G'day all.

Quoting wren ng thornton <wren at freegeek.org>:

> Sometimes in Haskell I've thought about how uniqueness typing would
> make something faster, but in general all the plumbing associated with
> it in Clean makes me feel like I'm writing systems-level code (i.e. C,
> asm) instead of using a high-level language. The extra plumbing really
> makes it feel dirtier to work with. That doesn't mean Clean is bad, but
> I think it does contribute to the "cluttered" feeling Haskellers get.

I think you're right here.

Haskell has developed something of an aversion to naming things that
aren't important enough to have a name, such as variables whose only
reason to exist is "plumbing".  We'd far rather spend effort on more
higher-order functions, monads, combinators and points-freeness than
name something that's unimportant.  And the funny thing about this is
that it usually works, because in Haskell, abstraction is cheap.

I believe that this is the main reason why Haskell programmers haven't
embraced arrows, despite their theoretical advantages: Every notation
that has been implemented so far requires names for things that shouldn't
need names.

> But as I said, it's a silly argument and folks should use whichever
> gives them warm fuzzies.

I'd like to think that professional developers are a bit more scientific
than this.

Andrew Bromage

More information about the Haskell-Cafe mailing list