Programming Language Theory Books

Anatomy of Programming Languages
by William R. Cook, 2013, 153 pp, multiple formats

Applicative Computing: Its quarks, atoms and molecules
by V. E. Wolfengagen, 2010

The Art of Computer Programming, Volume 4
by Donald E. Knuth, 2006, PDF/PS

Category Theory and Functional Programming
by Mikael Vejdemo-Johansson, 2012, 99 pp, 410KB, PDF

Certified Programming with Dependent Types
by Adam Chlipala, 2011, 371 pp, 3.9MB, PDF

Common LISP: A Gentle Introduction to Symbolic Computation
by David S. Touretzky, 1990, 587 pages, 1.1MB, PDF

Comparative Studies of Programming Languages
by Joey Paquet, Serguei A. Mokhov, 2010, 66 pages, 1.2MB, PDF

Compiler Construction
Wikibooks, 2011

Compiler Construction
by William M. Waite, Gerhard Goos, 1996, 372 pp, 1.9MB, PDF

Compiler Design in C
by Allen I. Holub, 1990, 986 pp, 18MB, PDF

Compiler Design: Theory, Tools, and Examples
by Seth D. Bergmann, 2010, 284 pp, 880KB, PDF

Compilers and Compiler Generators
by P.D. Terry, 1996

Computational Category Theory
by D.E. Rydeheard, R.M. Burstall, 2001, 263 pages, 0.9MB, PDF

Concrete Abstractions: An Introduction to Computer Science Using Scheme
by Max Hailperin, Barbara Kaiser, Karl Knight, 1998, 670 pages, 2.5MB, PDF

Concrete Semantics: With Isabelle/HOL
by Tobias Nipkow, Gerwin Klein, 2016, 308 pp, 1.6MB, PDF

The Design and Implementation of Probabilistic Programming Languages
by Noah D. Goodman, Andreas Stuhlmüller, 2016, 215 pp, online html

The Design of Functional Programs - A Calculational Approach
by Dr. Robert Richard Hoogerwoord, 1989, 228 pages, 4.4MB, PDF

Formal Language Theory for Natural Language Processing
by Shuly Wintner, 2001, 52 pp, 320KB, PDF

Formal Languages
by Keijo Ruohonen, 2009, 98 pp, 1MB, PDF

Foundations of Computer Science
by Lawrence C Paulson, 2000, 155 pages, 0.5MB, PDF

Galois Connections and Fixed Point Calculus
by Roland Backhouse, 2001, 105 pages, 0.5MB, PDF

Homotopy Type Theory
by Peter Aczel, et al., 2013, 599 pp, 3.2MB, PDF

How to think like a Computer Scientist (C++ Version)
by Allen B. Downey, 1999, 189 pages, 800KB, PDF

Implementing Functional Languages: a tutorial
by Simon Peyton Jones, David Lester, 2000, 296 pages

Implementing Programming Languages
by Aarne Ranta, 2012, 133 pp, 710KB, PDF

Introduction to Computing: Explorations in Language, Logic, and Machines
by David Evans, 2009, 298 pages, 35MB, PDF

Introduction to Programming Languages
Wikibooks, 2013, online html

Introduction to Type Theory
by Herman Geuvers, 2011, 57 pages, 350KB, PDF

Intuitionistic Type Theory
by Per Martin-Loef, 1980, 57 pp, 670KB, PDF

Languages and Machines
by C. D. H. Cooper, 2008, PDF

Lecture Notes on Static Analysis
by Michael I. Schwartzbach, 2010, 58 pp, 360KB, PDF

Lectures on the Curry-Howard Isomorphism
by Morten Heine B. Sorensen, Pawel Urzyczyn, 2006, 273 pages, 1.3MB, PDF

Linkers and Loaders
by John R. Levine, 1999, 256 pp, multiple formats

Logic and Proof
by Lawrence C Paulson, 2002, 79 pages, 290KB, PDF

Logic, Programming and Prolog
by Ulf Nilsson, Jan Mauszynski, 1995, 296 pages, 1.9MB, PDF

Natural Language Interfaces to Databases: An Introduction
by I. Androutsopoulos, G. D. Ritchie, P. Thanisch, 1995, 50 pages, 450KB, PDF

Natural Language Processing in Prolog
by Gerald Gazdar and Chris Mellish, 1989

Notes on Computational Linguistics
by Edward Stabler, 2003, PDF

Partial Evaluation and Automatic Program Generation
by Neil D. Jones, Carsten K. Gomard, Peter Sestoft, 1993, 400 pages, 1.7MB, PDF

Programming and Programming Languages
by Shriram Krishnamurthi, 2014, 262 pp, online html

Programming Languages: Theory and Practice
by Robert Harper, 2005, 277 pp, 810KB, PDF

Proofs and Types
by Jean-Yves Girard, Yves Lafont, Paul Taylor, 1989

Semantics: Advances in Theories and Mathematical Models
by Muhammad Tanvir Afzal (ed.), 2012, 284 pp, 4.6MB, PDF

Semantics of Programming Languages
by Andrew M. Pitts, 2002, 97 pp, 480KB, PDF

Semantics With Applications: A Formal Introduction
by Hanne Riis Nielson, Flemming Nielson, 1992, 250 pages, 1.2MB, PDF

The Theory of Languages and Computation
by Jean Gallier, Andrew Hicks, 2006, 109 pp, 950KB, PDF

Topics in History and Comparing Programming Languages
by Dennie Van Tassel, 2014, online html

Universal Algebra for Computer Science
by Eric G. Wagner, 2006

Write You a Haskell: Building a modern functional compiler from first principles
by Stephen Diehl, 2015, 246 pp, online html