Concepts, techniques, and models of computer programming - VAN ROY, Peter (MIT Press, 2004)