Practical Foundations for Programming Languages
by Robert Harper
Number of pages: 470
This is a working draft of a book on the foundations of programming languages. The central organizing principle of the book is that programming language features may be seen as manifestations of an underlying type structure that governs its syntax and semantics. The emphasis, therefore, is on the concept of type, which codiﬁes and organizes the computational universe in much the same way that the concept of set may be seen as an organizing principle for the mathematical universe. The purpose of this book is to explain this remark.
Home page url
Download or read it online for free here:
by Shriram Krishnamurthi - Brown University
Many people would regard this as being two books in one. One book is an introduction to programming, teaching you basic concepts of organizing data and the programs that operate over them. The other book is an introduction to programming languages.
by Keijo Ruohonen - Tampere University of Technology
In these notes the classical Chomskian formal language theory is fairly fully dealt with, omitting however much of automata constructs and computability issues. Surveys of Lindenmayer system theory and the mathematical theory of codes are given.
by Tobias Nipkow, Gerwin Klein - Springer
The book teaches the reader the art of precise logical reasoning and the practical use of a proof assistant as a tool for formal proofs about computer science artefacts. All the mathematics is formalised in Isabelle and much of it is executable.
by David Schmidt - Kansas State University
Denotational semantics is a methodology for giving mathematical meaning to programming languages and systems. This book was written to make denotational semantics accessible to a wider audience and to update existing texts in the area.