else
impliciteIl s'agit cette fois d'alléger les notations dans les structures conditionnelles (avec if
) lorsque les blocs n'ont aucune instruction. Voici la première règle :
Un bloc vide begin end
peut s'écrire aussi comme un couple de parenthèses : ()
.
Exemple sur une variante d'un exercice précédent :
let prenom = read_line() in if prenom = "arthur" then begin print_string "c'est moi"; print_newline(); end else begin end ;
Se simplifie en :
let prenom = read_line() in if prenom = "arthur" then begin print_string "c'est moi"; print_newline(); end else () ;
Et maintenant une seconde règle qui permet de simplifier encore plus :
Dans une structure if
, on peut se passer du "else ()"
.
Illustration :
let prenom = read_line() in if prenom = "arthur" then begin print_string "c'est moi"; print_newline(); end ;
Notez que le point-virgule correspondant à la fin du bloc if
se retrouve maintenant à la suite du bloc du then
.
Dans un tel cas, on peut si on a envie placer le point-virgule après le end
:
let prenom = read_line() in if prenom = "arthur" then begin print_string "c'est moi"; print_newline(); end;
C'est un peu une question de goût.