Introduction à la programmation
fonctionnelle en Ocaml
M.V. Aponte
Année 2009/2010
Pourquoi Ocaml?
C’est un langage multi-paradigme, concis et puissant:
traits fonctionnels, et impératifs,
système de modules génériques,
Programmation objet sophistiquée,
nombreuses librairies
Il permet de programmer aisément des applications
complexes;
C’est un langage sûr et facile à employer:
typage fort et inférence des types.
Pourquoi Ocaml? (suite)
Son noyau fonctionnel est bien adapté à l’analyse
mathématique des programmes;
C’est langage qui possède deux modes:
compilé (byte-code ou code natif), avec performances
comparables à C;
et un mode intéractif, qui facilite les tests.
Gestion mémoire automatique (comme en Java).
Documentation, distribution et plus de détails:
http://caml.inria.fr/ocaml.
Un peu d’histoire
Ocaml est un langage de la famille ML, développé depuis 1980.
1975 : Robin Milner propose ML comme mèta-langage (langage de
script) pour l’assistant de preuve LCF. Devient rapidement un
langage de programmation à part entière.
1985 : Développement de Caml à l’INRIA, de Standard ML
(Edinburgh), de “SML of New-Jersey”, de Lazy ML(Chalmers),
de Haskell (Glasgow), etc.
1990-95 : Implantation de Caml-Ligh, compilateur vers du code natif +
système de modules.
1996 : Objets et classes (OCaml).
2001-... : Arguments étiquettés, Méthodes polymorphes, librairies
partagées, Modules récursifs, private types, . . . .
Domaines d’utilisation
Un langage multi-paradigme et d’usage général avec des
domaines de prédilection:
Calcul symbolique: Preuves mathématiques, compilation,
interprétation, analyse de programmes.
Prototypage rapide: Langage de script; Langages dédiés.
Programmation distribuée (bytecode rapide).
Utilisé en enseignement et recherche:
Classes préparatoires.
Utilisé dans de grandes universités (Europe, US, Japon,
etc.).
1 / 80 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 !