Bob Davison wrote:
I
thought calculus was about differentiation and integration and was very
surprised to discover that there were such things as 'predicate
calculus', 'propositional calculus', and various flavours of 'lambda
calculus'.
The stuff involving rates of change, integration, and differentiation,
is often called differential calculus, or simply "the calculus". But
"calculus" more generically refers to any system of calculation. So the
lambda calculus, the various flavours of calculus in symbolic logic, and
so on, don't have the word "calculus" in their names because they're
related to differential calculus or to each other, but because they're
systematic ways to approach calculation.
I have no idea how much of this stuff I need to know
Very little, but exactly how much, and of what, depends on what you want
to do. Having a slight grounding in algorithm analysis, an appreciation
of induction, and a bottomless pot of coffee is enough to get started.
but I would
certainly like to be able to learn more of this facinating new world and
not just be content with learning how to write a Haskell program.
If you want a good grounding in thinking about functional code, I like
Okasaki's "Purely Functional Data Structures". Graham, Knuth and
Patashnik's "Concrete Mathematics" is a good CS-related book that covers
a lot of ground at a leisurely pace.
<b
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe