|
![](/i/fill.gif) |
Suppose you look at a diagram relating the important standard library
classes for some object-oriented language. You'd probably see things
like Container, Array, List, Dictionary, Stream, InStream, OutStream,
Exception, and so forth.
Now look at the attachment.
I'm starting to see why people think Haskell is scary. (!) All of these
things are pretty abstract. Actually, most of them are lifted directly
from either Category Theory or Abstract Algebra. E.g., a monoid is any
set possessing an associative binary operation with an identity element.
WOOOSH!
Makes it pretty clear what kind of abstractions Haskellers value, eh?
When there *is* a predefined class for "a monoid in the category of
endofunctors", but there *isn't* one for "ordered container"...
(FWIW, Haskell does have a hierachy of number classes, which looks more
or less like what any other language has - including being horribly
broken in several ways.)
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
Attachments:
Download 'eg1.png' (45 KB)
Preview of image 'eg1.png'
![eg1.png](/povray.off-topic/attachment/%3C4c2f17d7%40news.povray.org%3E/eg1.png?preview=1)
|
![](/i/fill.gif) |