Précédent Index Suivant

Introduction

Le développement d'applications dans un langage donné nécessite très souvent de devoir intégrer des bibliothèques provenant d'autres langages. Cela pour deux raisons principales : Une application devient alors un assemblage de briques logicielles provenant de différents langages, où chaque brique spécialisée a été écrite dans le langage adéquat pour traiter une partie du problème. Celles-ci interopèrent entre elles pour la communication de valeurs et la demande de calculs.

Le langage Objective CAML possède un tel mécanisme d'interopérabilité avec le langage C. Il permet d'appeler à partir d'Objective CAML des fonctions C, avec arguments, et de récupérer en Objective CAML le résultat du calcul. De même l'inverse est possible. Un programme C peut déclencher un calcul en Objective CAML et travailler ensuite sur le résultat.

Le choix du langage C apparaît judicieux pour les raisons suivantes : On peut donc voir le langage C comme un espéranto des langages de programmation.

La coopération entre C et Objective CAML soulève un certain nombre de difficultés que nous passons en revue ci-dessous. Les applications développées en Objective CAML bénéficient des qualités dues à la sûreté du typage et de la gestion automatique de la mémoire. Une bonne utilisation de bibliothèques C ou de l'interfaçage via C avec d'autres langages ne doit pas mettre en danger cette sûreté. Il faudra donc suivre des règles assez strictes pour que les deux langages cohabitent harmonieusement.


Précédent Index Suivant