Annexe D - Messages d'erreurs de l'interprète du langage▲
Syntax error message d'erreur lorsqu'une phrase (expression ou déclaration) est malformée.
2.
3.
4.
# 1 + ;;
Syntax error
# let = 3+1 ;;
Syntax error
This expression has type… but is here used with type… message d'erreur lorsqu'une expression n'est pas typable par inadéquation des types de certaines sous-expressions.
2.
3.
4.
# 1 + 2. ;;
This expression has type float but is here used with type int
# print_string (1);;
This expression has type int but is here used with type string
Unbound value … message d'erreur lorsque dans l'évaluation d'une expression une variable non préalablement déclarée intervient.
2.
# a + 1;;
Unbound value a
Unbound constructor … message d'erreur lorsque dans une expression intervient un constructeur non déclaré. En Caml, les constructeurs sont désignés par des identificateurs débutant par une lettre majuscule.
2.
3.
4.
# init_tas(2,TT);;
Unbound constructor TT
# let a = 1 in a*a + A ;;
Unbound constructor A
This function is applied to too many arguments, maybe you forgot a ';' message d'erreur lorsqu'on précise davantage de paramètres qu'il n'est nécessaire.
2.
3.
4.
# let f(x) = x + 1;;
val f : int -> int = <fun>
# f(1)(2);;
This function is applied to too many arguments, maybe you forgot a ';'
This expression is not a function, it cannot be applied message d'erreur lorsqu'on essaie d'utiliser une valeur comme une fonction…
2.
3.
4.
# let a = 3 ;;
val a : int = 3
# a(4);;
This expression is not a function, it cannot be applied


