[Haskell-cafe] Comments from OCaml Hacker Brian Hurt
immanuel203 at gmail.com
Fri Jan 16 06:10:50 EST 2009
It's a criticism already voiced by the great David Bowie:
"My Brain Hurt like a warehouse, it had no room to spare
I had to cram so many things to store everything in there"
On Thu, Jan 15, 2009 at 4:34 PM, John Goerzen <jgoerzen at complete.org> wrote:
> Hi folks,
> Don Stewart noticed this blog post on Haskell by Brian Hurt, an OCaml
> It's a great post, and I encourage people to read it. I'd like to
> highlight one particular paragraph:
> One thing that does annoy me about Haskell- naming. Say you've
> noticed a common pattern, a lot of data structures are similar to
> the difference list I described above, in that they have an empty
> state and the ability to append things onto the end. Now, for
> various reasons, you want to give this pattern a name using on
> Haskell's tools for expressing common idioms as general patterns
> (type classes, in this case). What name do you give it? I'd be
> inclined to call it something like "Appendable". But no, Haskell
> calls this pattern a "Monoid". Yep, that's all a monoid is-
> something with an empty state and the ability to append things to
> the end. Well, it's a little more general than that, but not
> much. Simon Peyton Jones once commented that the biggest mistake
> Haskell made was to call them "monads" instead of "warm, fluffy
> things". Well, Haskell is exacerbating that mistake. Haskell
> developers, stop letting the category theorists name
> things. Please. I beg of you.
> I'd like to echo that sentiment!
> He went on to add:
> If you?re not a category theorists, and you're learning (or thinking
> of learning) Haskell, don't get scared off by names like "monoid" or
> "functor". And ignore anyone who starts their explanation with
> references to category theory- you don't need to know category
> theory, and I don't think it helps.
> I'd echo that one too.
> -- John
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe