
Program Construction
by Roland C. Backhouse · first published 2003
4mentions
3recommended by
3HN commenters
2016–2023first – last mentioned
100% recommend
Unique approach tackles what most books don't-why maths and logic are fundamental tools for a programmer This comprehensive guide is a balanced combination of mathematical theory and the practice of programming Straightforward presentation of construction principles inlcuding: assignment axiom, sequential composition, case analysis, use of invariants and bound functions Includes a wide range of entertaining and challenging examples and exercises
Affiliate links. As an Amazon Associate I earn from qualifying purchases.

…textbook, solutions, and so on): http://www.cs.toronto.edu/~hehner/FMSD/ I really liked it. I also liked R. Backhouse's approach to it, encapsulated in two books: 1) less playful: http://www.amazon.com/Program-Construction-Calculating-Imple... 2) more playful: http://www.amazon.com/Algorithmic-Problem-Solving-Roland-Bac... If you are looking for motivation, you might also like: http://research.microsoft.com/en-us/um/people/lamport/pubs/p...…
on “Letters between Backus and Dijkstra (1979)” ↗…reveal errors, with no guarantee of revealing all of them. The only way to prove correctness is to write a proof of adherence to a specification. I found a good example of this from an excerpt of the book Program Construction by Roland Backhouse. The code is in Pascal. The problem the students had been set was to write a program that would compare two strings for equality. One student's solution was to assign the value true…
on “Ask HN: Would you pay to have code verified?” ↗I learned this stuff from Roland's 'Program Construction'. Great book. Once you've been through that, then suddenly Dijkstra's writing becomes really practical.
on “A Parable by Dijkstra (1973)” ↗Hmm. My picks would be very different, aside from 'The Pragmatic Programmer', which is worth reading early in your career. Leo Brodie, 'Thinking Forth' Roland, 'Program Construction' Ullman, 'Elements of ML Programming' De Marco, 'The Deadline' Brooks, 'The Mythical Man-Month' Skiena, 'The Algorithm Design Manual' Hunt, 'The Pragmatic Programmer' Stevens, 'Advanced Programming…
on “Best Books for Programmers in 2020” ↗