Question

I have recently become extremely interested in understanding and proving aspects of (functional) programming languages.

However as I dive deeper in, things like $\lambda$ calculus, category theory, and denotational semantics are a little difficult to grok without proper explanation.

I read SICP (quite an enlightening book) but I'm looking to dive deeper into the theory of functional programming. Are there any books/blogs/sites/you-name-it that would discuss the theory of functional programming languages from the ground up?

Was it helpful?

Solution

It is not easy to come by books that consider the denotational semantics of $\lambda$-calculus. One possibility is:

  1. Roberto M. Amadio and Pierre-Louis Curien: Domains and Lambda-Calculi

Type-theoretic accounts are easier to get hold of:

  1. Bob Harper, Practical Foundations of Programming Languages (there is also a printed version).
  2. Benjamin Pierce, Types and Programming Languages.
  3. Frank Pfenning's course on Computation and Deduction, I think he also published a book with the same title.

OTHER TIPS

A new answer to an old question. You might be interested in Category Theory for Programmers by Bartosz Milewski. More generally, you can look at Bartosz Milewski's Programming Cafe blog.

These books have high ratings and come up on different scientific communities:

Type Theory and Functional Programming by Simon Thompson.

Structure and Interpretation of Computer Programs

Licensed under: CC-BY-SA with attribution
Not affiliated with cs.stackexchange
scroll top