Les propriétés comme boussole : programmer avec précision
Le brouillard s'épaissit autour de la ligne « def max(a: Int, b: Int): Int ». Que fait-elle ? Elle retourne le plus grand de deux nombres, mais comment le vérifier ? On peut écrire une dizaine de tests avec des paires concrètes : max(2,3)=3, max(5,5)=5, max(-1,0)=0. Et pourtant, une inquiétude demeure : et si, pour un million et moins un million, elle se cassait ?

















