Jean Mouric

professeur de mathématiques à Rennes

vous propose quelques utilitaires pour Caml sous Mac OS X, Windows ou Java


Dernières mises à jour:

21/01/2018 WinCaml 6.1, Patch Graphique OCaml et Patch OCaml
- Patches: correction de l'affichage des titres des fenêtres graphiques sous Windows en cas d’utilisation d’OCaml 4.06.0
- WinCaml 6.1: remplacement dans l’archive WinCaml6-src_1.zip du contenu du dossier caml/ocaml/windows/ocaml64:
-- nouveau miniocaml extrait d’OCaml 4.06.0
-- nouvelle bibliothèque dllgraphics.dll conforme aux Patches précédents
(WinCaml sous forme de code source uniquement pour le moment).

18/01/2018 WinCaml 6.1
Comme pour MacCaml précédemment, même corrections et adaptation à Unicode
Sous forme de code source uniquement pour le moment.
La note du 15/01/2018 sur les applications non signées ne concerne que Mac OS (Sierra et High Sierra): après téléchargement sur Mac, le dossier décompressé
WinCaml6-src_1 devrait se trouver dans le dossier "Téléchargements" ($HOME/Downloads). Entrer dans terminal la commande:
sudo xattr -r -d com.apple.quarantine $HOME/Downloads/WinCaml6-src_1 avant d’essayer de compiler WinCaml.

15/01/2018 MacCaml 5.3 et variante Swift
- Correction d’un problème de coloration syntaxique des constantes chaînes de caractères terminées par \\" et d'un problème d’indentation associé.
- Adaptation à Unicode: modification de la communication avec Caml dans les deux sens; les chaînes de caractères sont transmises à Caml en utf-8 et le reste en Latin1,
et en sortie les séquences d’octets décimaux \xxx sont remplacées par leurs équivalents utf-16 adaptés à l’affichage dans le panneau de sortie
Et si Caml lit un fichier censé représenter du texte (MacRoman, Latin1 ou utf-8) MacCaml essaie de l’afficher correctement.
(cf. les dossiers exemples/Caml Light/unicode et exemples/OCaml/unicode).
Parmi les conséquences sans doute indésirables... mais normales: string_length "é" = 2
Note: (en cas de difficultés d’installation et de mise en œuvre)
- Vérifier (Menu Pomme > Préférences Système... > Sécurité et confidentialité) que vos préférences de sécurité ne vous limitent pas aux applications téléchargées depuis l’App Store.
- MacCaml n’étant pas une application signée, elle sera certainement après téléchargement affublée de l’attribut étendu com.apple.quarantine. Bien qu'il soit possible d'autoriser le lancement de MacCaml après un clic droit sur son icône, ceci peut ne pas suffire pour éviter son lancement avec translocation, ce qui perturbera son fonctionnement (en raison de changements dans les chemins). Une solution est alors de supprimer l’attribut com.apple.quarantine comme suit: Supposons par exemple que le dossier MacCaml ait été placé directement dans le dossier /Applications. Entrer alors dans terminal la commande sudo xattr -r -d com.apple.quarantine /Applications/MacCaml (qui demande le mot de passe administrateur). Il faudra peut-être ensuite se déconnecter et se reconnecter, voire redémarrer pour disposer complètement de MacCaml.

02/01/2018: Patch OCaml.
Cette nouvelle archive patch_oc.zip permet d’utiliser, en plus d’espaces, toute sorte de caractères non-ASCII dans le chemin d'installation
(on peut introduire un chemin ésotérique par copier/coller dans le terminal au moment où le chemin d’installation est demandé).
Ceci devrait fonctionner avec les systèmes suivants:
- MacOS et Linux avec chemins UTF-8
- Windows 10, mais seulement avec OCaml 4.06.0
Remarque concernant OCaml 4.06.0: Pour installer camlp4 utiliser ocamlbuild-0.12.0.tar.gz et camlp4-4.06-1.tar.gz,
et pour installer la libnum utiliser findlib-1.7.3.tar.gz (ou findlib-1.7.1.tar.gz) et num-1.1.tar.gz

suite de l’historique

  • Patches de Caml-Light et OCaml utilisés par MacCaml, WinCaml/WindCaml/WindSCaml, JavaCaml et LinCaml:

    patch caml-light (pour compiler Caml-Light sous OS X, Windows et divers Linux)
    ancien patch caml-light
    Patch graphique OCaml (modifie les bibliothèques graphiques X11 et Windows d’OCaml et fournit la bibliothèque graphique Cocoa)
    Patch OCaml (modifie les bibliothèques graphiques X11 et Windows d’OCaml, fournit la bibliothèque graphique Cocoa et installe OCaml)
    ancien Patch OCaml
    L'archive cl75unix.tar.gz et les archives ocaml-x.yy.z.tar.gz sont présentes ici : archives caml-light et ocaml



  • MacCaml, pour l’utilisation interactive de Caml-Light et OCaml sous Mac OS X:

    Télécharger la version 5.3 de MacCaml (5,2 Mo)
    pour Lion, Mountain Lion, Mavericks, Yosemite, El Capitan ou Mac OS Sierra sur architecture x86_64
    ou sa variante pour Mavericks 10.9.5, Yosemite, El Capitan ou Sierra (9,3 Mo) fondée sur le langage Swift
    (Pour utiliser OCaml, installer OCaml 4.0x.y à partir de la distribution en code source: ocaml)
    (On pourra utiliser le Patch OCaml)

    En cas d’utilisation de XQuartz et d’absence de /usr/X11, créer un lien symbolique /usr/X11
    vers le répertoire /opt/X11 (ligne de commande: sudo ln -s /opt/X11 /usr/X11)
    pour que la bibliothèque graphique OCaml X11 intégrée à MacCaml fonctionne.
    Supprimer cette dernière (dllgraphics.so) sans créer le lien symbolique si OCaml a été installé à partir du patch ocaml

    Télécharger la version 4.7.2 de MacCaml (5,8 Mo)
    pour Tiger (10.4.11 ppc 32 bits), Leopard (10.5.8 intel 32 bits), Snow Leopard (10.6.8 intel 64 bits)... et Mac OS Sierra
    MacCaml 4.7.2 fonctionne avec ocaml 3.11.0, 3.11.1, 3.11.2, 3.12.0, 3.12.1 ou 4.0x.y:
    (installer de préférence OCaml à partir de la distribution en code source: ocaml)
    (On pourra utiliser le Patch OCaml)

    MacCaml contient des fichiers binaires obtenus à partir des distributions Caml-Light et OCaml pour unix disponibles ici:

    Distributions Caml-Light et OCaml


  • WinCaml pour l’utilisation interactive de Caml-Light et OCaml sous Windows 2000 Pro, XP, Windows 7 ou 8 ou 10:

       Pour installer WinCaml 6 (6.0):
          1. Télécharger et dézipper celle des trois archives suivantes qui paraît le mieux convenir (x86 = 32 bits, x64 = 64 bits)

    Télécharger  WinCaml 6 (win2000)                 WinCaml 6 (x86)                 WinCaml 6 (x64)                

               (ou au choix celle des trois suivantes respectivement équivalentes aux trois précédentes)

    Télécharger  WinCaml 6 (mingw win2000)     WinCaml 6 (mingw x86)     WinCaml 6 (mingw x64)    

               Elle contient l’exécutable WinCaml.exe
          2. Télécharger et dézipper l’archive suivante contenant le dossier WinCaml6

    Télécharger le dossier de WinCaml 6 (7,2 Mo)

          3. Placer ce dossier WinCaml6 où bon vous semble   (ne pas utiliser le dossier WinCaml d’une installation antérieure à sa place)
          4. Placer l’exécutable WinCaml.exe dans ce dossier WinCaml6 au premier niveau

       Les versions 5.8 et 5.9 sont encore disponibles.

    WinCaml inclut des fichiers binaires obtenus à partir des distributions source de Caml-Light et OCaml.
    Le graphisme est emprunté à la distribution OCaml pour Windows.
    La distribution Caml-Light n’est pas nécessaire.
    La distribution OCaml ne devrait pas être nécessaire sur une machine équipée d’un processeur x64 ou amd64.
    Les distributions Caml Light et OCaml sont téléchargeables ici:
    Distributions Caml-Light et OCaml.
    WinCaml dispose à peu près des mêmes fonctions que MacCaml.

    La boucle interactive OCaml 64 bits intégrée peut nécessiter (en cas d’absence de MSVCR100.dll) l’installation du paquet
    Microsoft Visual C++ 2010 redistributable (x64)

    WinOcaml et l’ancien WinCaml sont toujours disponibles: WinOCaml , Ancien WinCaml,
    ainsi que WinCaml 4.5

  • WinCaml pour Windows 64, Debian Gnu Linux 64 (Wheezy ou Jessie ou Stretch) et Mac OS via wxWidgets ou Qt:

    WinCaml pour Windows x64
    WinCaml pour Linux x86_64            WinCaml pour Debian Linux 9.1.0 x86_64
    WinCaml via Qt pour Mac OS (Lion 10.7.5 et suivants)


    La présence à part des bibliothèques wxWidgets et Qt n’est en principe pas nécessaire (lien statique).

    Mise en œuvre de WinCaml pour Linux x86_64 avec tp-algo

    Aperçus de WinCaml pour Linux via wxWidgets sous tp-algo de l’E.N.S. Lyon (cliquer sur la miniature):



    Pour Linux il faudra peut-être rendre exécutables les binaires wincamlinit, WinCamlqt, WinCamlwx et lintoplevel64
    Les binaires WinCamlqt et WinCamlwx peuvent fonctionner avec d’autres distributions Gnu/Linux amd64,
    éventuellement après avoir installé la Libpng12 (WinCaml pour Linux x86_64 seulement)

    Pour Windows installer, en cas d’absence de MSVCR110.dll ou de MSVCP110.dll, le paquet Microsoft Visual C++ 2012 redistributable (x64)

    Pour Mac OS veiller à ce que XQuartz soit installé

  • Code source C++ complet de WinCaml 6, (Windows, Mac OS X et Linux):

    Cette archive contient aussi les éléments constitutifs du dossier de WinCaml 6 pour les trois systèmes
    et des scripts de construction à adapter éventuellement à la ligne de commande de l’environnement de programmation

    Code source C++ de WinCaml 6 (8,1 Mo)

    Code source C++ de WinCaml 6.1 (18,2 Mo)

    Important: Les toplevels caml-light proposés, notamment lintoplevel32 et lintoplevel64 pour Linux, peuvent ne pas convenir.
    Dans ce cas les remplacer en utilisant le patch caml-light

    Pour OS X, en cas d’utilisation de XQuartz et d’absence de /usr/X11, créer un lien symbolique /usr/X11
    vers le répertoire /opt/X11 (ligne de commande: sudo ln -s /opt/X11 /usr/X11)
    pour que la bibliothèque graphique OCaml X11 intégrée à WinCaml fonctionne.
    Supprimer cette dernière (dllgraphics.so) sans créer le lien symbolique si OCaml a été installé à partir du patch ocaml


  • JavaCaml, pour l’utilisation interactive de Caml-Light et OCaml sous Linux, Mac OS X, ou Windows:

    Télécharger JavaCaml-5.0 (9 Mo)
    JavaCaml inclut des fichiers binaires obtenus à partir de la distribution source de Caml-Light pour unix:
    cette dernière (archive cl75.unix.tar.gz), non indispensable, est disponible ici:
    Distributions Caml-Light et OCaml

    Pour l’installation d’OCaml, voir le fichier A lire joint à JavaCaml
    Sous Mac OS X JavaCaml utilise le serveur graphique Apple X11
    Sous Windows, la boucle interactive OCaml 64 bits intégrée peut nécessiter (en cas d’absence de MSVCR100.dll) l’installation du paquet
    Microsoft Visual C++ 2010 redistributable (x64)
    JavaCaml fonctionne avec la machine virtuelle (jre) d’Oracle en version 5, 6, 7 ou 8

    Important: Les toplevels caml-light proposés, notamment lintoplevel32 et lintoplevel64 pour Linux, peuvent ne pas convenir.
    Dans ce cas les remplacer en utilisant le patch caml-light

    La version 4.9 de JavaCaml est encore disponible:     JavaCaml 4.9 (9 Mo)     Code source de JavaCaml 4.9

    Code source de JavaCaml 5.0 (1,1 Mo)


  • MacCaml est une application Cocoa. WinCaml est dans les versions inférieures à 5 une application MFC (Microsoft Foundation Classes) et dans la version 5 une application Win32/Win64, ou une application Qt ou wxWidgets; assez proche de MacCaml, WinCaml fonctionne sous Windows 2000 professionnel, Windows XP et Windows 7 ou 8 et dans ses versions Qt et wxWidgets sous OS X et Linux. JavaCaml est une application Java Swing apparentée aux précédentes fonctionnant sous Mac OS X, Windows et Linux équipés de la machine virtuelle Java d’Oracle (jre: Java Runtime Environment).



  • Capture d’écran de WinCaml 5.7 sous Debian Wheezy Live (tp-algo E.N.S. Lyon) dans une machine virtuelle Parallels 4 Go sous OS X Yosemite: MacBook Pro Retina 15 pouces 16 Go 1920 x 1200 (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de WinCaml 5.7 sous Debian Wheezy Live (tp-algo E.N.S. Lyon) sur PC portable ASUS intel core 2 duo 4 Go 1366 x 768 (cliquer dessus pour obtenir une image plus précise):



  • Captures d’écran de MacCaml 4.4 (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de WinCaml 4.3 sous Windows XP (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de JavaCaml sous Debian Gnu/Linux avec environnement graphique Gnome (cliquer dessus pour obtenir une image plus précise):



  • Dossier Caml sur les automates finis et langages rationnels:

    Télécharger l’archive AFetLR.zip (215 Ko)