At http://www.cs.cmu.edu/~rwh/plbook/book.pdf there is a free programming book on "Practical Foundations for Programming Languages"
Enjoy!