Richard A. O'Keefe writes:
(2) The mathematical background of Haskell is extremely important
    for implementations.  Some important data structures and
    techniques are practical in large part because of the kinds of
    optimisations that are only straightforward in a language that
has such foundations.
(3) Beginners do not need to understand all the mathematics behind
    Haskell to use it.

(5) Precisely because it seeks generality, category theory seems
    difficult to "concrete thinkers".  And books on category theory
    tend to be extremely fast-paced, so ideas which are not in  themselves
    particularly esoteric (which may in fact be eminently practical)
    tend to be presented in a way which people trying to study by
    themselves have trouble with.  So people can be scared off by
    what _ought_ to be a big help to them.

Yes.
Yes.
And when *additionally* people whose experience/competence is rather weak,
spread the fear, hatred and carelessness, I have the impression that this
is something similar to a guy in primary school (and this list *is* a kind
of school) who bothers the pupils with such discoveries as "the differential
calculus is a swearword, just to annoy you, you will =never= need that, I
live happily without".
There IS a problem. The fast pace of Category theory is a bit incomplete
diagnosis. For me, what was most annoying was an awful trap. Everything
began slowly, and nicely. And authors are kind, helpful, and understanding.
And they promise that it is *for me*. Or for Brandon S. Allbery KF8NH...
(BTW, Why Andrew Bromage says that the book of Lawvere is pricey? Cambridge
Univ. Press sells the "Conceptual Mathematics" for 33 pounds. This is not
so much...) Check some other titles, *free*, please:
*Categories for =working comp. sci'ists=, Asperti&Lungo.
*Categorical Primer by Chris Hillman (he - apparently - still revises the
 next version...)
*Gentle introduction to Cat. Th., a calculational approach by Fokkinga.
*Basic Cat., by Jaap Van Osten, a course for undergraduates, which begins
 by saying that for the Author the basic experience counts more than
theory. (And, of course, Barr and Wells...)
Now, you start reading, it goes smoothly, you understand functors, natural
transformations, retracts, initial objects, etc. And then the slope
begins to increase exponentially, you hit a wall...
It seems that people who finally decided to write books, tutorials, etc.
are so conditioned, that they cannot put themselves into a skin of a true
profan, even people so perfect, so didactically skilled as Barr and Wells.
But as says the quotation from a science-fiction story /Born among the
dead/: "you must elevate yourself to their level, since you cannot force
them to descend to yours..."
Still, monads, Kleisli triples, etc. belong to the *EASY* part!!
===
So, if some people really *want* to learn something, some time devote they
shall. But, there are some shortcuts as well, although nothing complete.
http://en.wikibooks.org/wiki/Haskell/Category_theory
is a nice introduction!
The paper on "Bananas, lenses and barbed wire" (Meijer, Fokkinga, Paterson)
is almost a compulsory reference.
The craziness of generalization/universality is very well exposed in the
compilation of Fritz Ruehr, which can be read by *ANYBODY*. There is no
"hard science" inside, just examples!
http://www.willamette.edu/~fruehr/haskell/evolution.html
Once upon a time, Eric Meijer and Luc Duponcheel wrote a paper entitled
"On the expressive power of constructor classes", where they proposed
a new "categorical prelude" for Gofer. It is an extremely inspiring paper!
(Citeseer shall have it.)
Some of ideas therein, in a different setting, can be easily read in the
Varmo Vene thesis on coinduction, and other "horrible stuff".
And, of course, there is a paper by Conor McBride and Ross Paterson on
applicative programming with effects, with an interesting discussion
*around* monads. http://www.soi.city.ac.uk/~ross/papers/Applicative.pdf
...
Ugh. I am afraid I began an infinite, corecursive strem. Perhaps it is
time to break it. Jerzy Karczmarczuk
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to