Numerical computation and software design. - Pierre-Yves Lesage (1999)