AW: slide: useful function?

Christopher Milton cmiltonperl@yahoo.com
Mon, 2 Dec 2002 12:50:10 -0800 (PST)


--- Mark Carroll <mark@chaos.x-philes.com> wrote:
> On Mon, 2 Dec 2002, David Bergman wrote:
> (snip)
> > Till then, we "Haskellers" will probably continue expressing our
> > patterns either directly in Haskell or using highly formal language,
> > with terms such as "catamorphisms".
> >
> > The virtue, and weakness, of traditional design patterns is their
> > vagueness and informal character, making them (1) comprehensible to the
> > 90% of the developer community not familiar with category theory but (2)
> (snip)
> 
> If there are any good ways in which non-mathematicians can get to grips
> with these terms from category theory, they would be well worth promoting.
> For example, despite having a good computer science degree (in which I was
> at least introduced to FP, proof, etc. and even learned to draw the dual
> graph of hypercubes) I'm really not equipped to understand catamorphisms
> in terms of algebras and homomorphisms, and don't currently have time to
> take the math degree I fear I'd need in order to do so. Last time I was
> looking at category theory books I think I came to the conclusion that
> Lawvere and Schanuel cover things kindly but Pierce seemed to get the
> syllabus right, so the "right" book wasn't quite out there.
> 
> My understanding of monads is already a matter of record. Does anyone know
> of a friendly text that might help new Haskellers to understand functors,
> etc. and what they mean for program design? I'm not averse to the formal
> language per se if it can be easily acquired; right now, I worry that I'm
> using Haskell suboptimally because, not only do I not know the terminology
> well, but I fear that I'm not even cognisant of the concepts that these
> terms represent.
> 
> In a nutshell: if these category theory concepts indeed have an important
> impact in Haskell land, how to introduce them to working Haskell
> programmers well enough that they can use them in engineering software
> that's at least half as good as it could be?
> 
> (I'm making the assumption here that it would be good for Haskell to be
> much more widely used - it shouldn't solely be for researchers.)

Here's some of what I've come across:

Jonathan M. D. Hill, and Keith Clarke
"An introduction to category theory, category theory monads, and their
relationship to functional programming"
ftp://ftp.dcs.qmw.ac.uk/cpc/jon_hill/qmw681.ps.Z
http://www.dcs.qmul.ac.uk/SEL-HPC/Articles/GeneratedHtml/functional.monads.html

Tom Leinster's Part III Category Theory course given in Cambridge in the
academic year 2000-2001:
http://www.dpmms.cam.ac.uk/~leinster/categories/

John Baez
Categories, Quantization, and Much More
http://math.ucr.edu/home/baez/categories.html
(see the links at the bottom of this page, too.)

Baez also has interesting info in his series,
This Week's Finds in Mathematical Physics
http://math.ucr.edu/home/baez/TWF.html

Chris

=====
Christopher Milton
cmiltonperl@yahoo.com

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com