CSI3525:
Concepts des Langages de
Programmation
Notes # 5:
Langages de Programmation
Fonctionelle I:
Introduction au Scheme
Introduction I
Le paradigme de programmation fonctionelle est
base sur les fonctions mathematiques.
Une fonction mathematique est une application qui
va de l’ensemble de depart a l’ensemble d’arrivee.
Elle prend un element de l’ensemble de depart et le
transforme en un element de l’ensemble d’arrivee.
Les fonctions sont controllees par des appels recursifs
et des instructions conditionnelles plutot que par des
sequences d’instructions et des repetitions iteratives.
De meme, une fonction calcule toujours le meme
resultat etant donne les memes arguments d’entrée.
Introduction II
Les fonctions peuvent etre combinees de maniere
elegante et pratique.
En particulier, on peut creer des fonctions d’ordre
plus eleve--aussi appellees formes fonctionelles--
qui, ou bien prennent comme argument une autre
fonction, ou bien retournent comme resultat une
fonction.
Examples de formes fonctionelles: les
compositions, les constructions et les applications
generalisees.
Fondation des Langages de
Programmation I
L’objectif de la programmation fonctionnelle est
d’imiter le plus possible les fonctions mathematiques.
Ces langages sont donc tres differents des langages
imperatifs.
En particulier, un langage fonctionel pur n’utilise ni
variables ni instruction d’affectement. Il utilise la
recursion pour obtenir de la repetition.
Les programmes sont des definitions de fonctions et
des specifications d’applications de fonctions.
Les executions sont des evaluations d’applications
de fonctions.
Fondation des Langages de
Programmation II
Un langage fonctionel doit avoir:
Un ensemble de fonctions primitives,
Un ensemble de formes fonctionnelles qui
permettent de construire des fonctions complexes
a partir de ces fonctions primitives,
Une operation d’application de fonction,
Et, finallement, une ou plusieures structures de
donnees
Bien que les langages fonctionnels soient souvent
implementes avec des interpreteurs, ils peuvent aussi
etre compiles.
1 / 17 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 !