[Haskell-cafe] Comments from OCaml Hacker Brian Hurt
wss at Cs.Nott.AC.UK
Thu Jan 15 11:44:45 EST 2009
At the risk of painting my own bikeshed...
> If you're learning Haskell, which communicates the idea more clearly:
> * Appendable
> * Monoid
Would you call function composition (on endofunctions) "appending"?
The join of a monad? A semi-colon (as in sequencing two imperative
statements)? How do you append two numbers? Addition, multiplication,
or something else entirely?
All these operations are monoidal, i.e., are associative and have both
left and right identities. If that's exactly what they have in common,
why invent a new name? "Appendable" may carry some intuition, but it
is not precise and sometimes quite misleading.
> I guess the bottom line question is: who is Haskell for? Category
> theorists, programmers, or both? I'd love it to be for both, but I've
> got to admit that Brian has a point that it is trending to the first
> some areas.
One of my grievances about Haskell is the occasional disregard for
existing terminology. "Stream Fusion" is about lazy lists/co-lists,
not streams; "type families" mean something entirely different to type
theorists. This kind of misnomer is even more confusing than a name
that doesn't mean anything (at least, until you learn more category
This message has been checked for viruses but the contents of an attachment
may still contain software viruses, which could damage your computer system:
you are advised to perform your own checks. Email communications with the
University of Nottingham may be monitored as permitted by UK legislation.
More information about the Haskell-Cafe