On the construction of programs - McKeag, R. M.; Macnaghten, A. M. (Cambridge University Press, 1980)