Skip to main content
gamedev.net
🔒 Locked

Functional programming books.

Started by MDI 3 replies 1k views
Original Post
MDI
MDI
I've recently got into functional programming languages in a big way. I'm thinking of getting some books on FPL's for Christmas. Right now, I know SML, kind of know O'Caml and would like to learn Haskell and Lisp or Scheme. I'd also like to learn about the theory behind the languages, for example, their relationship with the lambda calculus etc and how type inference and their type system work. I've started reading "Types and Programming Languages" from the library. For Lisp, I was thinking about getting "ANSI Common Lisp" by Paul Graham and for Haskell I was thinking about getting "The Haskell School of Expression: Learning Functional Programming Through Multimedia" by Hudak. Really I taught myself the basics of Haskell in an afternoon, but things like Monads, type classes and lazy evaluation are foreign to me as an SML programmer. Does anyone have any experience with these books? Any recommendations?
ToohrVyk
ToohrVyk
I do not have recommendations of my own, but I wanted to confirm that Benjamin C. Pierce is indeed one of the best authors on the subject.
snk_kid
snk_kid
Common lisp i recommend in this order:


  1. Successful Lisp

  2. Practical Common Lisp

  3. On Lisp (advance macro usage)



Those books are all free and online.

For an introduction to the general theory of functional programming i've heard good things about Introduction to Functional Programming using Haskell by Bird Wadler after which the next step could be

The Fun of Programming

Personally i've read Haskell: The Craft of Functional Programming and not The Haskell School of Expression i read it was a little light on haskell the language itself compared to "The Craft...". Still might be enough after either of those i'd say after go through these:

Yet Another Haskell Tutorial
A Gentle Introduction to Haskell.

More theory stuff:

Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire

Free, notable mentions:

How to Design Programs (in Scheme)
Structure and Interpretation of Computer Programs (in Scheme)

If you like SML (i do) and C# then you should check out Nemerle

[Edited by - snk_kid on December 20, 2005 5:43:05 PM]
NicoDeLuciferi
NicoDeLuciferi
I found Simon Thompson's Haskell: The Craft of Functional Programming to be an excellent book.

And I could recommend both Practical Common Lisp and ANSI Common Lisp, especially the latter that's the one that I used when learning lisp.

/Nico

[Edited by - NicoDeLuciferi on December 21, 2005 7:22:57 AM]

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.