Practical Foundations for Programming Languages
by Robert Harper
Publisher: Carnegie Mellon University 2016
Number of pages: 580
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 Harold Abelson, Gerald Jay Sussman, Julie Sussman - McGraw-Hill
The book teaches how to program by employing the tools of abstraction and modularity. The central philosophy is that programming is the task of breaking large problems into small ones. You will learn how to program and how to think about programming.
by D.E. Rydeheard, R.M. Burstall
The book is a bridge-building exercise between computer programming and category theory. Basic constructions of category theory are expressed as computer programs. It is a first attempt at connecting the abstract mathematics with concrete programs.
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 Alexander Stepanov, Paul McJones - Semigroup Press
This book applies the deductive method to programming by affiliating programs with the abstract mathematical theories. Specification of these theories, algorithms and theorems and lemmas describing their properties are presented together.