H. Abelson and G. Sussman, Structure and Interpretation of Computer Programs, 1985.

K. Arnold and J. Gosling, The Java Programming Language, 1996.

G. Bachelard, La formation de l'esprit scientifique, 1938.
DOI : 10.1522/030331552

N. Baxter, E. Dubinsky, and G. Levin, Learning Discrete Mathematics with ISETL, 1989.
DOI : 10.1007/978-1-4612-3592-7

G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide, 1998.

J. Chailloux, P. Maunoury, and B. Pagano, Développement d'applications avec Objective Caml, 2000.
DOI : 10.3166/tsi.24.1055-1080

G. Cousineau and M. Mauny, Approche Fonctionnelle de la Programmation, 1995.

M. Gautier, K. Proch, and G. Masini, Cours de programmation par Objets, 1996.

J. Jacquot and J. Guyard, Requirements for an ideal first language, Proc. First International Symposium on Functional Programming Langugages in Education, pp.51-63, 1995.
DOI : 10.1007/3-540-60675-0_38

G. Masini, A. Napoli, D. Colnet, and K. Tombre, Object oriented languages. AcademicPress, 1991. translation of Les languages à objets, 1989.

B. Meyer, Objet-Oriented Software Construction, 1988.

B. Meyer, Eiffel, the language, 1992.

G. Polya, How to Solve it. DoubleDay, 1957.