The Design of Functional Programs - A Calculational Approach
by Dr. Robert Richard Hoogerwoord
Publisher: Technische Universiteit Eindhoven 1989
Number of pages: 228
This document was started as a research to what extent functional programs can be designed in a calculational way. This should be possible because functional-program notations carry less operational connotations than their sequential counterparts do, functional-program notations more resemble "ordinary" mathematical formalisms than sequential-program notations do. This raised a question of whether the two ways of programming are really different: they might very well turn out to have more in common than one would expect at first sight. The results of this research are laid down in this document. This study is about programming, as a design activity; it is not about programming languages, formal semantics included, nor about implementations. This implies that this document discusses semantics and implementations only as far as needed for its purpose, namely the formulation of a set of rules for designing programs.
Download or read it online for free here:
by Robert Harper - Carnegie Mellon University
Introduction to programming with the Standard ML - a formally defined programming language. The text covers the core language, declarations, functions, products and records, recursive functions, type inference and polymorphism, lists, and more.
by Adam Chlipala
The purpose of this book is to convince people who write software that the technology of program verification is mature enough today that it makes sense to use it in a support role in many kinds of research projects in computer science.
by Andrew Cumming - Napier University
Functional languages such as ML, Hope and Lisp allow us to develop programs which will submit logical analysis relatively easily. Using a functional language we can make assertions about programs and prove these assertions to be correct.
by Axel Rauschmayer - ReasonML Hub