[EMAIL PROTECTED] wrote (on 03-12-02 18:18 +0100): > Perhaps I should rephrase: > > There's too much mathematics in it, I'm not a mathematician ..and later... > > lot of mathematics. One of the things I like about FP is that it > > demands more mathematical sophistication of its practitioners, which, > > contrary to some opinions, I think is a Good Thing. > > I'm fully with you there, but - as someone already pointed out - I don't > want to need a math major to read a paper regarding programming.
How many times has this phrase been uttered, I wonder...! The truth is: You DON'T need a math degree to understand such papers. This may come as a shock, but the reason for this is that they are not written by or for an audience of mathematicians, but rather for an audience of CS researchers who actually possess---wait for it---CS degrees! :) Now, admittedly, there is a lot funny notation, jargon and special concepts in PLT papers. That's why a few people have undertaken the task of writing textbooks, surveys and tutorials for people who did not come into this world with the Library of Congress preloaded in their brains. Two good books which come to mind are: John C. Mitchell. Foundations for Programming Languages. MIT Press, 1996. Benjamin C. Pierce. Types and Programming Languages. MIT Press, 2002. I've also collected some freely available ones here: PLT Online http://www.cs.uu.nl/~franka/ref That was CS and PLT. Now let's talk about mathematics and algebra. It doesn't take a degree in mathematics to do or understand mathematics. The people who get degrees in mathematics get them, not in order to do mathematics, but rather in order to create/discover (do you favor Plato or Brouwer?) _new_ mathematics. People nowadays use the word "mathematics" as if it were some exotic beast you can only find in the hinterlands of darkest Africa! Every field, even something as mundane as accounting, has its wildly esoteric corners. No one expects programmers to be experts in twistor theory or inaccessible cardinals. Hell, no one expects CS researchers to be experts in those bits either. Elementary algebra is not one of those esoteric bits. As mathematical topics go, it's simple, fundamental, ubiquitous and closely connected to FP. It won't gobble up your grandmother or demand your first-born child. At a guess, I think most FP programmers could easily get up to speed on the basics of constructive universal algebra in the context of FP---signatures, initial algebras, catamorphisms, free constructions, monads, etc.---in the space of a workshop-length course. It's common practice for programmers in industry to take training courses on things like Java beans, ActiveX controls and UML; why not algebra, or proof theory or operational semantics? At least those things are sure to survive longer than the latest buzzword technology... -- Frank _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell