Consepts, techniques, and models of computer programming - Van-Roy, Peter (The MIT Press, 2004)