Programmation fonctionnelle avec Objective Caml

Dans un monde sans e et de bord…

ou encore…dans un monde purement fonctionnel…
{on peut evaluer les fonctions (et leurs arguments) dans
n’importe quel ordre : let a = f x + g x + h (z x) :
le resultats sera toujours le m^eme.
{si f x est tres long a calculer, le compilateur peut stocker le
resultat pour le reutiliser plus tard.
{simpli e la comprehension (humaine et automatique) d’un
programme.
{ouvre plein de possibilite pour l’optimisation du code.
{reduit fortement la presence de bug.
…mais on a quand besoin des e ets de bords de temps en
temps… (au moins pour acher un resultat !)
Les e ets de bords dans OCaml
 print int, print char,print string, print float,
print endline, print newline
Printf.printf, …
read int, read line, read float, …
 Les operations sur les chiers
 Les references :
let i = ref 0
let f x = begin i := !i + 1; x+ !i end
# f 10;;
– : int = 11
# f 10;;
– : int = 12
 etc.
f est un fonction a e et de bord
Le temps entre en piste
Lorsque des e ets de bords sont presents, l’ordre d’evaluation d’une expression / des arguments d’une fonction,peut in uer sur le resultat. On doit prendre en compte l’aspect temporel de l’execution du programme. C’est une complication supplementaire.

LIRE AUSSI :  Compiler un module avec ocamlc ocaml -c

…….

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours Caml (168 KO) (Cours PDF)
Cours Caml

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *