At the risk of painting my own bikeshed...

If you're learning Haskell, which communicates the idea more clearly:

* Appendable

or

* 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 in
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 theory).

  Wouter



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.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to