Chapitre IV
Programmation fonctionnelle :
Langage Lisp
EPSI / Montpellier - Cycle CSII 2A
Intelligence Artificielle
•Introduction
–Types de programmation
•Programmation procudérale (impérative) : on
donne à l ’ordinateur toutes les étapes pour
résoudre le problème
•Aspect séquentiel des programmes
•Notions d ’affectation, de condition et de
répétition
•Programmation déclarative : on décrit le rapport
entre les données et les résultats
•Programmation logique : PROLOG
•Programmation fonctionnelle : LISP
Programmation fonctionnelle :
Langage Lisp
•Historique du langage Lisp
(LISt Processing)
–1958 : Création de Lisp par John Mac Carthy
•Travaux de Alonzo Church sur le lambda-calcul
•Travaux de John Mac Carthy sur les fonctions
récursives
–1970-1980 : Prolifération des dialectes Lisp
–1984 : Normalisation ANSI X3J13 de Lisp par
Guy L. Steele
•Définition du dialecte Common Lisp
–1989 : Publication officielle de la norme X3J13
•La norme Common Lisp est arrêté en Octobre 1989
Programmation fonctionnelle :
Langage Lisp
•Caractéristique de Lisp
–Un langage généralement interprété
–Un langage de haut niveau
–Un langage extensible
–L’objet de base est la fonction
•Un programme = un ensemble de définitions et
d’appels de fonctions
–L’opération de base est l ’évaluation d ’une
expression
•Application d ’une fonction à une liste d ’arguments
–Structure de données
•Les données et les programmes sont représentés
par des listes
Programmation fonctionnelle :
Langage Lisp
Programmation fonctionnelle :
Langage Lisp
•Caractéristiques de Lisp
–Lisp manipule des données symboliques
•Donnée symbolique = s-expression
–Lisp offre une approche objet de programmation
•Classes et fonctions génériques
–Lisp est un langage interactif
•Boucle à trois temps(REPL:Read-Eval-Print Loop)
read eval print
Lecture d ’une expression
symbolique (une s-expression) Évaluation de
l’expression
Écriture du résultat
(une s-expression)
1 / 64 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!