Précédent Index Suivant

Texte

Bien que l'informatique soit devenue une activité industrielle, à bien des égards le succès d'un langage de programmation est affaire de subjectivité. Si << le coeur a ses raisons que la raison ignore >> alors Objective CAML est un choix raisonnable pour un amant de coeur.

Il repose sur des fondements théoriques solides tout en disposant d'un large spectre de paradigmes de programmation. Si on ajoute la simplicité de la prise de contact avec le langage que permet la boucle d'interaction, cela en fait un langage parfaitement adapté à l'enseignement. Pour ces qualités, Objective CAML est souvent utilisé comme support d'enseignement à l'initiation à l'informatique aussi bien que pour des cours de programmation avancée qui explicitent le lien entre le haut niveau d'abstraction du langage et son exécution. Nombre d'enseignants ont été et restent séduits par l'intérêt pédagogique d'Objective CAML et, par voie de conséquence, nombre d'informaticiens y ont été formés.

Un des premiers sujets de satisfaction du développement en Objective CAML est son confort d'utilisation. Le compilateur se charge rapidement et son inférence statique de types ne laisse rien échapper. D'autres analyses statiques du code donnent de précieux indices d'anomalies sinon d'erreurs pour le programmeur : les filtrages incomplets sont signalés, l'application partielle d'une fonction dans une séquence est détectée, etc. À ce premier sujet de satisfaction s'en ajoute un second : le compilateur engendre très rapidement un code efficace.

Performance du compilateur, concision d'expression de la programmation fonctionnelle, qualité et diversité des bibliothèques font d'Objective CAML un langage parfaitement adapté aux besoins du << logiciel jetable >>. Mais ce serait le réduire que de le cantonner à ce seul domaine d'application. Pour ces mêmes raisons, Objective CAML est un outil précieux d'expérimentation et de prototypage d'applications. De plus, lorsqu'aux traits déjà cités viennent s'ajouter les mécanismes de structuration des modules et des objets, le langage ouvre la voie à la conception et au développement d'applications abouties.

Enfin, Objective CAML et sa communauté de développeurs forment un milieu extrêmement réactif à l'innovation dans le domaine de la programmation. La libre disponibilité et la diffusion des sources du langage offrent un terrain d'expérimentation ouvert aux concepts émergeants.

L'apprentissage d'Objective CAML réclame un certain effort au programmeur familier d'autres langages. Et ce, alors même que l'objet de son étude est en évolution constante. Nous espérons que sans masquer la complexité de certains concepts, cet ouvrage facilitera cette phase d'apprentissage et pourra ainsi accélérer le retour sur investissement du développeur d'applications en Objective CAML.






Précédent Index Suivant