Concepts, Techniques, and Models of Computer Programming - Van Roy (IEEE, 2003)