A Practical Theory of Programming
by Eric C.R. Hehner
Publisher: Springer 2006
Number of pages: 243
Understanding programming and programming languages requires knowledge of the underlying theoretical model. This book explores aspects of programming that are amenable to mathematical proof. The author describes a programming theory which is much simpler and more comprehensive than the current theories to date. In the theoretical model, a specification is just a boolean expression and refinement is just an ordinary implication. The author develops a practical and broad method for writing precise specifications and designing programs whose executions probably satisfy the specifications.
Home page url
Download or read it online for free here:
(multiple PDF files)
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 Dennie Van Tassel - Gavilan College
This website contains files on the history of computer programming language statements. The files compare programming language statements in several different languages tracing the statement from early languages to present languages.
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.
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.