OVH Cloud OVH Cloud

inclure du (o)caml dans du c++

1 réponse
Avatar
Francois Maltey
Bonjour,

Je suis bien intéressé par un certain programme écrit en c++, le
système giac de calcul formel avec une licence GPL.

Je souhaite inclure dedans quelques fonctions dont le code source sera
en caml : en gros des fonctions de parcours d'arbre et de
simplification.

D'une part je ne m'inquiète pas pour écrire les "maquettes" de ces
fonctions en caml, et d'autre part l'auteur de giac peut utilement me
conseiller pour tout ce qui est c++.

Mon problème est de savoir comment creer un fichier caml qui qui
devienne un include dans le code C++, ou une bibliothèque. Et qui
puisse échanger des données dans les deux sens : Comment transformer
un objet c++ en données caml "ayant le même sens", et réciproquement
comment faire croire au c++ que le résultat de caml est un objet c++.

Bien cordialemeent.

François

1 réponse

Avatar
kevin_sejourne
Francois Maltey wrote in message news:...
Bonjour,

Je suis bien intéressé par un certain programme écrit en c++, le
système giac de calcul formel avec une licence GPL.

Je souhaite inclure dedans quelques fonctions dont le code source sera
en caml : en gros des fonctions de parcours d'arbre et de
simplification.

D'une part je ne m'inquiète pas pour écrire les "maquettes" de ces
fonctions en caml, et d'autre part l'auteur de giac peut utilement me
conseiller pour tout ce qui est c++.

Mon problème est de savoir comment creer un fichier caml qui qui
devienne un include dans le code C++, ou une bibliothèque. Et qui
puisse échanger des données dans les deux sens : Comment transformer
un objet c++ en données caml "ayant le même sens", et réciproquement
comment faire croire au c++ que le résultat de caml est un objet c++.

Bien cordialemeent.

François
J'etudais tres recement le meme probleme. J'ai commencer avec Google

et je suis tomber sur un article qui en parle dans la mailing list de
caml. Il s'agit d'un article de 97 ecrie par Thierry Bravier.
Il crée une classe ML pourvue des methodes constructeur, descripteurs
et operateurs neccesaire.
http://caml.inria.fr/archives/199704/msg00029.html