Computational Category Theory
by D.E. Rydeheard, R.M. Burstall
Number of pages: 263
This book is an account of a project in which basic constructions of category theory are expressed as computer programs. The programs are written in a functional programming language, called ML, and have been executed on examples. The authors have used these programs to develop algorithms for the unification of terms and to implement a categorical semantics. In general, this book is a bridge-building exercise between category theory and computer programming. These efforts are a first attempt at connecting the abstract mathematics with concrete programs, whereas others have applied categorical ideas to the theory of computation.
Home page url
Download or read it online for free here:
by Andrew M. Pitts - University of Cambridge
These notes introduce the structural, operational approach to programming language semantics. The course shows how to specify the meaning of some simple programming language constructs and to reason formally about semantic properties of programs.
by Peter Selinger - Dalhousie University
Topics covered in these notes include the untyped lambda calculus, the Church-Rosser theorem, combinatory algebras, the simply-typed lambda calculus, the Curry-Howard isomorphism, weak and strong normalization, type inference, etc.
by J. M. Spivey - Prentice Hall
The standard Z notation for specifying and designing software has evolved over the best part of a decade. This an informal but rigorous reference manual is written with the everyday needs of readers and writers of Z specifications in mind.
by Robert Harper - Carnegie Mellon University
This is a book on the foundations of programming languages. The emphasis is on the concept of type, which organizes the computational universe in the same way that the concept of set may be seen as an organizing principle for mathematics.