Chapitre 0 : Le langage Caml
1/30
Programmation impérative versus fonctionnelle
Prog. impérative
séquences d’instructions ;
notion d’état du programme ;
boucles for et while essentielles.
les processeurs sont de nature impérative : exécutions d’instructions
données par « op codes ».
état du programme : contenu de la mémoire à chaque instant.
Python, C, Assembleur, Langage machine : plus ou moins haut
niveaux, mais tous impératifs.
2/30
Programmation impérative versus fonctionnelle
Prog. fonctionnelle
autre paradigme de programmation ;
un programme est une fonction mathématique ;
exécution du programme : évaluation de la fonction ;
Eviter la notion d’état, d’effet de bord : un calcul donne toujours le
même résultat (c.ex : fonction de tri en Python)
la récursivité (appel d’une fonction à elle même) remplace les
boucles.
3/30
Exemple : la factorielle
Factorielle impérative
Fonction fact(n)
f1;
pour i allant de 1 à n faire faire
ff×i
fin
Renvoyer f
Factorielle fonctionnelle
Fonction fact(n)
si n0alors
Renvoyer 1
sinon
Renvoyer n×fact(n1)
fin
4/30
Python versus Caml
Python
Langage impératif, permettant l’usage de la récursivité.
Caml
Langage fonctionnel, permettant la programmation impérative.
5/30
1 / 43 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !