4 ms·
While there is no "royal road" to mathematics for programmers who don't care about proofs, there is a programmer's road to proofs for those interested in Math.
by asolove 13y ago
While there is no "royal road" to mathematics for programmers who don't care about proofs, there is a programmer's road to proofs for those interested in Math.
In fact, the book is even called "The Haskell Road to Logic, Maths and Programming" [0]. It covers mathematical notation, proof construction, and lots of interesting portions of discrete math that should be of interest to programmers. And large portions of the results are demonstrated or used in interesting Haskell programs.
[0] http://www.amazon.com/Haskell-Programming-Second-Edition-Computing/dp/0954300696/ref=cm_cr_pr_product_top http://www.amazon.com/Haskell-Programming-Second-Edition-Com...
- dysoco 13y agoThat book is on my to-read list, yet I don't know what to think of a book that starts like this: http://i.imgur.com/rSc0fpw.png http://i.imgur.com/rSc0fpw.png
- ef4 13y agoThe validity of that statement depends on your historical perspective. To the modern eye, we see radically different type systems and conclude they are as different as night and day. But there was a time when the world was divided into people who thought anything higher-level than C or FORTRAN was stupid and impractical, and those who aspired to build more abstract languages. LISP was one of the rallying cries of the latter group. Haskell clearly falls into that group too.
- dysoco 13y agoHm, that makes some sense, the book might be old, that's why.
- andrewflnr 13y agoIt can't be that old, since according to Wikipedia Haskell itself is only about 23 years old. http://en.wikipedia.org/wiki/Haskell_(programming_language) http://en.wikipedia.org/wiki/Haskell_(programming_language)
- j2kun 13y agoAnd before that, there were the people who thought anyone using an assembler was wasting precious CPU cycles, and something like FORTRAN was considered heresy.
- slurry 13y agoI' m not sure it makes a ton of sense either, even for an older book. OTOH, knowing a lot about programming language history/politics and knowing a lot about math and rigorous CS theory tend to be negatively correlated in my experience. I know I should be demonstrating that assertion with hard numbers, but in my defense I do know a lot about programming language history and politics. ;)
- hcarvalhoalves 13y agoBoth Haskell and LISP are in the "top-down" approach (approaching programming from an abstract angle, without concerns about the underlying machine), as opposed to the "bottom-up" approach (where you are explicitly managing I/O, memory, and the underlying machine is not abstracted away), like C or Ada.
- JulianMorrison 13y agolambda calculus --> Haskell \--> LISP --> Scheme \--> Common Lisp
- elviejo 13y agoThe Haskell Road to Logic is a pretty good. I took a class on discrete mathematics only with formulas. I didn't understand any of it. Then I read this book and all of it made sense. "What I cannot program, I cannot understand.." (with my apologies to Feynman)
- mathattack 13y agoI would add that Project Euler (www.projecteuler.net) is a fun place to practice. To your point, many of the best solutions are done in Haskell. They make it seem so easy!
- rplacd 13y agoThe Acknowledgements has an interesting anecdote - Thierry Coquand, apparently, found the original lecture notes that would become the book out the blue and seems to have offered quite a bit.