Bibliography
floyd1967
Robert W. Floyd. (1967). Assigning Meanings to Programs. Proceedings of Symposium on Applied Mathematics. 19. American Mathematical Society. pp. 19-32. ISBN 0821867288.
gries1981
Gries, David. (1981). The Science of Programming. Springer Verlag. ISBN 978-0387964805.
dijkstra1976
E. W. Dijkstra. A Discipline of Programming. Prentice-Hall, 1976.
hoare1969
Hoare, C. A. R. (1969). An axiomatic basis for computer programming. Communications of the ACM Volume 12 Issue 10, Oct. 1969 Pages 576-580
hoare2004
Hoare, C. A. R. (2004) [1985]. Communicating Sequential Processes. Prentice Hall International. ISBN 0-13-153271-5.
wadler1987
Wadler, P. (1987). Views: a way for pattern matching to cohabit with data abstraction. Proceeding POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages Pages 307 - 313.