I have some background in set theory and automata and I am looking for a good place to start with lambda calculus.
There is, of course, the very famous book by Barendregt,
- The Lambda Calculus, Its Syntax and Semantics (Studies in Logic and the Foundations of Mathematics, Volume 103). Revised Edition, North-Holland, 1985. (link to vendor)
which doesn't require much background except for the usual mathematical maturity. This is mostly about the untyped lambda calculus. He also has some introductory notes here.
An introductory book that seems very nice to me is Lambda-Calculus and Combinators. An introduction by J. Roger Hindley and Jonathan P. Seldin.
The best books that I've found are:
- Very basic: Hankin, An introduction to the lambda calculus for computer scientists.
- Advanced: Sorensen and Urzyczyn, Lectures on the Curry-Howard isomorphism.
- Advanced: Hindley, Basic simple type theory.
- The Bible: Barendregt, The lambda calculus: its syntax and semantics.
Another excellent book is "Lambda-calculus, types and models" Ellis Horwood (1993) by Jean-Louis Krivine http://www.pps.jussieu.fr/~krivine/articles/Lambda.pdf
I really enjoy Types and Programming Languages by Benjamin C. Pierce. We used this for a course on the lambda calculus, and I felt this was a great way for a mathematician to learn the subject
Proof and Types is a good place to learn about the Curry-Howard isomorphism.