Historique

08/10/15: MacCaml 5.2 et sa variante Swift
index# - Correction du script camltoplevel (dans MacCaml.app/Contents/Resources) pour OS X El Capitan

13/09/15: MacCaml 5.2 et sa variante Swift fonctionnent sans changement avec OS X El Capitan
- Ajout aux exemples du fichier int64_io.ml illustrant brièvement le dernier Patch de Caml Light (cf. 08/09/15)
- Révision de l’archive WinCaml5_wx_qt_win_x64.zip
Archives modifiées:
- MacCaml (versions 4.7.1 et 5.2)
- le dossier de WinCaml 5
- les binaires de WinCaml 5 via Qt et wxWidgets
- le code source C++ de WinCaml 5
- JavaCaml (JavaCaml v4.9)

12/09/15: Variante Swift de MacCaml pour Yosemite et Mavericks 10.9.5
Variante remise en ligne après correction des problèmes de corruption de fichiers.

11/09/15: Mise à jour des toplevels Caml Light à partir du dernier patch
Archives modifiées:
- MacCaml (versions 4.7.1 et 5.2)
- le dossier de WinCaml 5
- les binaires de WinCaml 5 via Qt et wxWidgets (WinCaml pour Linux x86_64 seulement)
- le code source C++ de WinCaml 5
- JavaCaml (JavaCaml v4.9)
Retrait de la variante Swift de MacCaml en raison d’un problème lié à la sauvegarde automatique.

08/09/15: Patch de Caml Light
- Modification, pour les machines 64 bits, des fonctions output_value et input_value afin qu’elles enregistrent et restituent correctement les int au-delà de 32 bits.
- Introduction, pour les machines 64 bits, de deux nouvelles fonctions: output_binary_int64 et input_binary_int64 fonctionnant comme output_binary_int et
input_binary_int, mais traitant correctement les int 64 bits alors que ces dernières, employées par le système caml-light, sont limitées aux int 32 bits.
Remarques:
- Les modifications ne sont utiles que pour les systèmes 64 bits.
- Pour utiliser ce patch, il convient au moins de remplacer le fichier WinCaml5/caml-light/lib/io.zi (resp. MacCaml.app/Contents/Resources/caml-light/io.zi)
par le nouveau fichier /usr/local/lib/caml-light/io.zi.
Archive modifiée: patch caml-light

23/08/15: Patch de Caml Light
Poursuite du contrôle des types pour une compilation sans avertissements ou presque.
Archive modifiée: patch caml-light

11/08/15:
- WinCaml5 fonctionne sous Windows 10
- Patch de Caml Light:
Remplacement des types entiers long et unsigned long par les types intptr_t et uintptr_t qui ont même taille que les pointeurs (utilisation de stdint.h et inttypes.h)
Archive modifiée: patch caml-light

23/06/15: WinCaml 5.8
Ajout au menu Caml d"un sous-menu Envoyer la sélection permettant d’envoyer directement à Caml tout texte sélectionné dans le panneau d’entrée de la fenêtre courante.
Ce sous-menu, normalement à usage occasionnel, permet notamment d’utiliser l’exemple minicaml à partir de WinCaml.
Archives modifiées:
- les 6 binaires natifs de WinCaml 5
- le dossier de WinCaml 5
- les binaires de WinCaml 5 via Qt et wxWidgets (WinCaml pour Windows x64, WinCaml pour Linux x86_64, WinCaml pour tp-algo)
- le code source C++ de WinCaml 5

21/06/15: MacCaml 5.2
- Correction d’un problème de coloration syntaxique liée à une erreur d’encodage des caractères (ne concerne pas la variante Swift de MacCaml).
- Ajout au menu Caml d"un sous-menu Envoyer la sélection permettant d’envoyer directement à Caml tout texte sélectionné dans le panneau d’entrée de la fenêtre courante.
Ce sous-menu, normalement à usage occasionnel, permet notamment d’utiliser l’exemple minicaml à partir de MacCaml.
Archives modifiées:
- MacCaml
- variante de MacCaml pour Yosemite

15/05/15: WinCaml pour Windows 7 ou 8 (64 bits)
Ajout, dans l’archive WinCaml pour Windows x64, de WinCaml via Qt (fichier exécutable WinCamlQt).

07/05/15: WinCaml pour Linux
- Ajout de WinCaml via Qt (fichier exécutable WinCamlQt) dans WinCaml pour tpalgo et dans WinCaml pour Linux x86_64:
WinCaml via Qt peut être utilisé à la place de WinCaml via wxWidgets (fichier exécutable WinCaml).
- Détection d’OCaml dans /usr/local, /usr (et sinon demande de l’emplacement).
- Mise à l’écart de LinCaml, WindCaml et WindSCaml (obsolètes et encombrants).
Archives modifiées:
- WinCaml pour tp-algo
- WinCaml pour Linux x86_64
- Code source C++ de WinCaml 5

26/04/15: Patch de Caml Light, WinCaml5 pour Linux 64 bits, variante swift de MacCaml
- Correction d’un dysfonctionnement des interruptions de Caml Light 0.75 pour WinCaml sous Linux 64 bits.
(ce dysfonctionnement semble aussi affecter Caml Light 0.82 de tp-algo version du 30 janvier 2015).
- Variante de MacCaml pour Yosemite utilisant le langage Swift 1.2 d’Apple (xcode 6.3.1).
Archives modifiées:
- Patch de caml-light
- WinCaml pour Linux x86_64
- Code source C++ de WinCaml 5
- variante pour Yosemite

18/02/15:WinCaml pour tp-algo (la distribution tp-algo de l’E.N.S. Lyon)
Cette distribution WinCaml utilise la distribution OCaml 3.12.1 et la distribution Caml Light 0.82 proposées par tp-algo, en accédant à cette dernière par des liens symboliques.
- Elle peut être utilisée telle quelle si on la place sur une partition linux (ext2, ext3 ou ext4) montée en lecture et écriture par tp-algo.
- Elle peut aussi être utilisée en la plaçant sur une partition ntfs montée en lecture et écriture par tp-algo si on y remplace les liens symboliques WinCaml5/caml-light/bin/lintoplevel64 et WinCaml5/caml-light/lib par leurs cibles qui sont respectivement le toplevel /usr/lib/caml-light/caml_all et le répertoire /usr/lib/caml-light/ (le caml_all remplaçant lintoplevel64 doit être renommé lintoplevel64).

Par rapport à Caml Light 0.82, le Caml Light 0.75 proposé habituellement avec WinCaml:
- lève les restrictions sur la quantité de mémoire utilisable imposées par Caml Light 0.82 (restrictions conformes au Caml Light d’origine); certains programmes fonctionnant avec lui ne fonctionnent donc pas avec Caml Light 0.82
- modifie la bibliothèque graphique pour éviter un crash de Caml Light quand on ferme la fenêtre graphique en utilisant le bouton rouge de sa barre de titre.

09/02/15: WinCaml
- Correction du moment de création du dossier de configuration (pour l’enregistrement éventuel du chemin d’OCaml).
- Correction, concernant WinCaml via Qt et WinCaml via wxWidgets du chemin de la bibliothèque graphique intégrée,
pour le cas d’une distribution OCaml à emplacement personnalisé, suivant qu’il s’agit d’une distribution 32 ou 64 bits.
- Passage à wxWidgets 3.0.2 (regénération des deux binaires du 07/02/15)
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets

07/02/15: Nouveau WinCaml pour Linux x86_64: Déplacement du répertoire de configuration
- Pour éviter le problème de sauvegarde de la configuration signalé le 30/01/15, le répertoire de la configuration est maintenant caché dans le répertoire parent de l’application WinCaml i.e. dans le répertoire WinCaml5, en supposant ce dernier placé sur une volume accessible en écriture. Son nom est .totototo est le nom du répertoire personnel de l’utilisateur (i.e. toto = tpalgo dans le cas de la distribution tp-algo de l’E.N.S. Lyon). Ainsi toto/.WinCaml est devenu WinCaml/.toto .
- Il peut paraître préférable de placer le répertoire WinCaml5 sur une partition ext2 (ou ext3, ext4) d’un disque accessible en lecture et écriture (par exemple une clé usb ou un disque externe usb): la distribution tp-algo monte par double-clic un tel disque en lecture et écriture.
- Les distributions Linux Live sont cependant souvent utilisées avec un PC sous Windows; on peut alors placer le répertoire WinCaml5 pour Linux sur la partition Windows (normalement au format ntfs) mais il faudra monter (par exemple en ligne de commande super-utilisateur) cette partition en écriture pour bénéficier de l’enregistrement de la configuration de WinCaml (la distribution tp-algo semble prudemment ne monter la partition Windows par double-clic qu’en mode lecture sans permettre l’exécution des programmes). plus de détails.
- Correction du moment de la création du répertoire de la configuration (ce dernier doit exister avant la création du premier fichier lockfile): ceci concerne plus généralement WinCaml pour Windows x64 via wxWidgets .

30/01/15: Note concernant WinCaml pour Linux x86_64
- Cette distribution WinCaml pour Debian Wheezy, une fois dézippée sur disque accessible depuis la distribution Debian Gnu linux live tp-algo proposée par l’E.N.S. Lyon, peut être utilisée telle quelle après avoir au besoin rendu exécutables les fichiers WinCaml et lintoplevel64. Toutefois la configuration de WinCaml, qui est actuellement enregistrée dans le sous-répertoire caché .WinCaml du répertoire personnel de l’utilisateur, est perdue à chaque redémarrage du système: le répertoire personnel se trouve en effet en mémoire vive (distribution live oblige!)... Mais rien n’empêche de sauvegarder sur disque le répertoire caché .WinCaml.
- D’une autre façon on peut préparer une clé USB bootable en mode persistence plutôt qu’un DVD bootable.
- Si WinCaml quitte de façon anormale, le répertoire caché .WinCaml peut contenir accidentellement un fichier nommé lockfile qu’il faudra alors éliminer car il empêche le redémarrage de WinCaml.
- WinCaml peut utiliser la distribution OCaml 3.12.1 de tp-algo si on lui dit, lorsqu’il le demande, qu’elle se trouve dans le répertoire /usr.


26/11/14: WinCaml sous OS X et MacCaml 5.1
Ajout d'une note concernant OCaml et XQuartz aux emplacements MacCaml 5.1 et Code source C++ de WinCaml 5

24/11/14: Patch de Caml Light
Ce remplacement du patch de Caml Light ne concerne que OS X avec XQuartz (depuis qu'Apple ne fournit plus X11) et Cygwin 64:
- prend en compte le chemin usuel /opt/X11 (remplaçant /usr/X11R6) de XQuartz
- supprime sélectivement dans le Makefile de libgraph-win un “chmod” qui peut poser problème avec Cygwin 64.

03/11/14: WinCaml (pour Windows seulement)
Correction du chemin de la bibliothèque graphique intégrée, pour le cas d'une distribution OCaml à emplacement personnalisé,
suivant qu'il s'agit d'une distribution 32 ou 64 bits.
Archives concernées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5

31/10/14: Bibliothèque graphique OCaml X11
Remplacement du patch ocaml pour compatibilité avec les différentes versions d'OCaml.

26/10/14: MacCaml
Introduction, sous Mavericks ou Yosemite, d'une variante de MacCaml 5.1 entièrement fondée sur le nouveau langage Apple Swift.

06/10/14: MacCaml et WinCaml
Remplacement des dernières archives postées en raison de quelques oublis.
Archives concernées:
MacCaml 4.7.1 et MacCaml 5.1
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets

02/10/14: WinCaml
Quelques corrections aux analyseurs lexicaux.
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets

30/09/14: MacCaml 4.7.1 et 5.1
- Quelques correctifs au fonctionnement des préférences
- Traitement d'une source potentielle de corruption du fichier en cours
- (5.1 uniquement) Remplacement des analyseurs lexicaux et modification du protocole de communication graphique
entre MacCaml et Caml (ne concerne pas X11)

06/07/14: MacCaml 5.0
- Suppression des substitutions automatiques de caractères (guillemets notamment).
- Désactivation de la réouverture automatique au démarrage des fichiers laissés ouverts en quittant MacCaml (concerne Lion).
- Correction des toplevels X11 de Caml Light (distinction entre Lion et Mavericks).

22/06/14: WinCaml
Mise à jour des scripts de construction de WinCaml 5 natif (sous répertoire MSVC)
(pour les compilateurs microsoft C++ de 1998 (32 bits) ou 2008, 2010, 2012, 2013 (32 ou 64 bits))
Archive modifiée:
Code source C++ de WinCaml 5

26/05/14: WinCaml via Qt
Mise à jour pour Qt 5.3.
Archive modifiée:
Code source C++ de WinCaml 5

17/05/14: MacCaml 4.7 pour OS X Tiger, Leopard et Snow Leopard
Remplacement des toplevels caml-light cocoa et des bibliothèques graphiques dynamiques ocaml cocoa
(Mise à jour de la gestion des événements).

13/05/14: MacCaml 5.0 pour OS X Lion, Mountain Lion et Mavericks
Remplacement de l’archive du 12/05/14 car cette dernière ne fonctionnait pas sous Lion

12/05/14: MacCaml 5.0 pour OS X Lion, Mountain Lion et Mavericks
- Remplacement du panneau de recherche par la barre de recherche (incompatible avec Snow Leopard)
(ce remplacement devrait éviter un crash de MacCaml pouvant, depuis Lion, survenir après la fermeture de ce panneau).
- Révision de la gestion des événements de la bibliothèque graphique Cocoa de Caml Light et OCaml
(la bibliothèque graphique OCaml Cocoa correspond à OCaml-4.01.0).

08/05/14: toplevels Caml Light Cygwin
Toplevels pour Windows donnant (en plus) accès à la libunix de Caml Light.

01/05/14: Patch de Caml Light
Optimisation de la compilation de la libnum pour Windows 32 bits et l’architecture i686.
(gain en rapidité d’environ 20%)
Archives modifiées:
Code source C++ de WinCaml 5
le dossier de WinCaml 5
Patch de caml-light

29/04/14: WinCaml5 et Patch de Caml Light
- WinCaml natif pour Windows: correction des dialogues de recherche et remplacement.
- WinCaml (toutes variantes): correction des fichiers lexicaux: problème sévère (signed/unsigned)
concernant les caractères accentués, présent depuis le 11/12/2013, pouvant provoquer un crash de WinCaml.
- Correction de la libnum de Caml Light.
Archives modifiées:
index.html# Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
le dossier de WinCaml 5
Patch de caml-light

12/04/14: WinCaml 5 (5.7)
- Modification du menu CamlTop
- Mémorisation des styles gras et italique
- Légère simplification du fichier exemples/OCaml/inria/minilogo/load.ml.
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
le dossier de WinCaml 5

05/04/14: WinCaml 5 (5.5)
- Oublié précédemment le 03/04/14, le dossier de WinCaml 5 est aussi modifié:
les modifications concernent le fichier exemples/OCaml/inria/minilogo/load.ml et le répertoire ocaml/windows/ocaml64/miniocaml/lib
(réintroduction du fichier ld.conf et du sous-répertoire stublibs)
- Conservation, lors de la restauration des réglages par défaut en présence d’un fichier .oml, du statut ocaml de ce fichier.
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
le dossier de WinCaml 5

03/04/14: WinCaml 5 (5.5)
(mise à jour ne concernant que l’utilisation d’OCaml)
Introduction d’une navigation dans les répertoires permettant d’indiquer le répertoire de la distribution OCaml si cette dernière n’est pas
présente dans l’un des emplacements usuels (nouveauté inactive sous Windows 64 bits puisqu’alors WinCaml dispose de sa propre
mini-distribution ocaml 64 bits et l’utilise a priori: mettre le sous-répertoire ocaml/windows/ocaml64/miniocaml à l’écart pour activer la recherche).
les emplacements d’ocaml considérés ici comme usuels sont:
pour Windows 32 bits
- C:\ocaml
- C:\Program Files\Objective Caml
pour Windows 64 bits
- C:\Program Files\Objective Caml (alias C:\Programmes\Objective Caml)
- C:\ocaml
- C:\Program Files (x86)\Objective Caml
pour Linux et OS X
- /usr/local
Difficultés:
- Pour certains emplacements non usuels, le fichier ld.conf du sous-répertoire lib de la distribution ocaml devra être accessible en écriture
pour le cas où son contenu serait incorrect (cas d’une distribution ocaml située sur un volume externe ou réseau notamment)
- Pour Linux et OS X la "ligne shebang" au début de chaque fichier bytecode de la distribution ocaml peut être incorrecte. Il convient alors
pour exécuter la commande bytecode toto d’utiliser Sys.command "ocamlrun toto";; (voire dans certains cas sous Windows
Sys.command "ocamlrun.exe toto";; - ou Sys.command toto.exe;; si toto est un .exe) au lieu de Sys.command "toto";;
(cf. exemples/OCaml/inria/minilogo/load.ml, pour un exemple où toto est ocamlc)
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets

18/03/14: WinCaml 5
- Correction de la fonction d’enregistrement d’un fichier dans le cas d’un fichier vide (wxWidgets et Windows natif)
- Correction de l’affichage de la barre d’état (toutes variantes de WinCaml)
- Modification dans la recherche d’OCaml sous Windows (toutes variantes de WinCaml)
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets

09/03/14: WinCaml 5, MacCaml
Mise à jour des derniers exemples (tris fusion et collecteur de déchets)
Archives modifiées:
MacCaml 4.7 et MacCaml 4.9
Code source C++ de WinCaml 5
les binaires de WinCaml 5 via wxWidgets pour Linux 64
le dossier de WinCaml 5

06/03/14: WinCaml 5, MacCaml et patch Caml Light
WinCaml:
- Correction du fichier lexical lex.yy.cpp concernant la coloration syntaxique (ordre alphabétique des mots clés).
- Correction des fichiers lexicaux lex.zz.cpp et lex.tt.cpp concernant l’indentation (parenthèses ouvrantes et crochets ouvrants)
WinCaml et MacCaml:
- Ajout au dossier exemples d’une mini-bibliothèque big_vect permettant la simulation de grands tableaux à une dimension
avec un exemple d’utilisation (fichier big_vect_sort.ml: tri rapide et tri fusion itératif)
(big_vect est utile sur les systèmes 32 bits car la taille des tableaux caml-light et ocaml ne peut y atteindre 4 Mio)
- Ajout au dossier exemples de tris fusion récursifs (Caml Light et OCaml: cf. taille des piles ci-dessous)
Patch Caml Light:
- Levée des restrictions imposées à la taille des piles, d’où la possibilité de récursions plus profondes
au prix d’allocations mémoire automatiques éventuellement coûteuses en temps
(pour OCaml ces restrictions peuvent être changées en utilisant la variable globale OCAMLRUNPARAM)
- Mise à jour des toplevels caml-light dans le dossier de WinCaml 5
Archives modifiées:
MacCaml 4.7 et MacCaml 4.9
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
le dossier de WinCaml 5
Patch de caml-light

30/01/14: WinCaml 5
- Correction de l’enregistrement au format rtf dans la variante wxWidgets.
- Retour au caractère indépendant de la plate-forme des fichiers sources du répertoire All (à l’exception de main.cpp),
ce caractère ayant été altéré lors de l’introduction de la variante wxWidgets.
- Correction des fichiers lexicaux (signe moins).
- Mise à jour des toplevels caml-light dans le dossier de WinCaml 5
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
le dossier de WinCaml 5

29/01/14: Patch de caml-light
- Restauration du fonctionnement du patch sous Windows et OS X Mavericks (ne pas avoir peur des warnings).
- Réactivation de l’option DIRECT_JUMP de l’interpréteur pour raisons de performance
(mais on peut la désactiver dans cl75/src/runtime/interp.c à la première interruption de la commande build).
- Modification de la gestion des pages de mémoire analogue à celle introduite dans camllight-0.82 par François Boisson :
cette modification devrait éviter certains plantages occasionnels de Caml-light observables au moins sous Linux 64 bits
(concerne les fichiers sources cl75/src/runtime/memory.c, cl75/src/runtime/major_gc.c, cl75/src/runtime/major_gc.h).

02/01/14: WinCaml 5 (toutes variantes) et patch Caml-light
- Correction de chemins (erreurs introduites notamment lors de la prise en charge des toplevels caml-light cygwin) : avec WinCaml
le répertoire de travail de caml au démarrage est censé être le répertoire où se trouve WinCaml (Wincaml.app dans le cas de OS X).
Tous les exemples devraient ainsi à nouveau fonctionner.
- Modification en conséquence des noms des toplevels cygwin fournis par le patch de caml-light.
(Noter que sur une machine où cygwin n’est pas installé les toplevels cygwin devraient être accompagnés de cygwin1.dll)
- Réorganisation des scripts de construction de WinCaml.
- Recompilation de WinCaml.
Archives modifiées:
Code source C++ de WinCaml 5
les 6 binaires natifs de WinCaml 5
les binaires de WinCaml 5 via wxWidgets
Le patch de caml-light



13/12/13: WinCaml 5 (5.4)
- Amendement du mode de sauvegarde des options.
- Légère modification des nouveaux analyseurs lexicaux.
Archive concernée: Code source C++ de WinCaml 5
Les fichiers binaires restent pour l’instant inchangés.

11/12/13: WinCaml 5
- Nouveaux analyseurs lexicaux: variantes naïves des trois analyseurs lexicaux précédemment générés par “lex”.
Ces derniers sont encore fournis et peuvent être utilisés par simple substitution avant compilation.
- Mise à jour des scripts de construction de WinCaml 5 (wxWidgets: Windows avec compilateur cl.exe).
Archive concernée: Code source C++ de WinCaml 5

15/11/13: WinCaml 5 (wxWidgets)
Rétablissement de l’affichage des erreurs de caml-light (Linux et OS X)
Archives concernées: Code source C++ de WinCaml 5 et WinCaml pour Linux x86_64.

18/10/13: WinCaml 5 (wxWidgets)
Préparation des scripts de construction pour utilisation avec wxWidgets-3.x.x par introduction de variables pour la version.
Ces scripts sont utilisables avec wxWidgets-3.0.0-rc1. Archive concernée: Code source C++ de WinCaml 5.

15/10/13: WinCaml 5 (wxWidgets)
Binaires pour Windows x64 et Linux x86_64

13/10/13: WinCaml 5 (wxWidgets)
Correction censée pallier le problème signalé le 08/10/13 provoqué notamment en “dézoomant” la fenêtre principale.
Archive concernée: Code source C++ de WinCaml 5.

08/10/13: WinCaml 5 (wxWidgets)
Important: (problème en suspens) il peut arriver sous Windows que la fenêtre active ne soit pas la fenêtre frontale: cas où le point d’insertion
clignotant n’apparaît plus dans cette fenêtre. Dans ce cas cliquer dans la fenêtre frontale pour la sélectionner, notamment avant d’y introduire du texte.
Archive concernée: Code source C++ de WinCaml 5.

06/10/13: WinCaml 5 (wxWidgets)
Correction du mode d’indentation par tabulations (largeur des tabulations); archive concernée: Code source C++ de WinCaml 5.

05/10/13: WinCaml 5 (wxWidgets)
Correction du rafraîchissement du panneau d’entrée en mode de retour à la ligne automatique; archive concernée: Code source C++ de WinCaml 5.

03/10/13: WinCaml 5 (wxWidgets)
Correction d’un problème de retour à la ligne (confusion entre CR et LF); archive concernée: Code source C++ de WinCaml 5.

01/10/13: WinCaml 5 (wxWidgets)
Correction ne concernant que Linux de l’affichage du curseur à la traversée de la cloison de la sortie vers l’entrée
en présence d’une barre verticale de défilement; archive concernée: Code source C++ de WinCaml 5.

26/09/13: WinCaml 5 (wxWidgets)
Correction de l’affichage des dialogues “Rechercher/Remplacer” et “WinCaml init”.

17/09/13: WinCaml 5 (Qt 5 et wxWidgets); archive concernée: Code source C++ de WinCaml 5
1) Nouveau: passerelle wxWidgets-2.9.5 pour WinCaml (Linux, OS X, Windows XP, 7 ou 8: VC++ ou MinGW)
2) Correction partielle du fonctionnement des dialogues de mise en page et d’impression concernant Qt 5
(Ces dialogues semblent fonctionner correctement avec Qt 4.7.x ou Qt 4.8.x):
- OS X, Qt 5: correction partielle du fonctionnement du dialogue de mise en page
- Linux, Qt 5: inactivation du dialogue de mise en page (ce dialogue est accessible à partir du dialogue d’impression).

14/09/13: Patch caml-light :
Prend en compte Cygwin 64.
La boucle interactive Caml-Light "camltoplevel64.exe" produite par ce patch peut remplacer celle du répertoire WinCaml5,
si on lui joint, là où elle réside, la librairie dynamique cygwin1.dll (celle de la distribution cygwin64 utilisée pour compiler).

22/05/13: Patch caml-light et WinCaml 5
- patch caml-light : inactivation de l’option DIRECT_JUMP dans “cl75/src/runtime/interp.c” car incompatible avec certains Linux
(elle était d’ailleurs déjà inactivée dans le patch caml-light précédent)
- WinCaml 5: toutes variantes
-- révision du fonctionnement des dialogues de recherche et remplacement (synchronisation des dialogues, gestion du couper-copier-coller)
-- possibilité de remplacer, sous le même nom camltoplevel32.exe, le toplevel 32 bits MinGW équipant WinCaml par le toplevel Cygwin
fourni par le patch caml-light (ne fonctionne que si cygwin1.dll est bien référencée dans la variable d’environnement PATH de Windows);
pour utiliser le toplevel 32 bits avec Windows 64, il suffit de déplacer le toplevel 64 bits camltoplevel64.exe (ou de changer son nom);
le toplevel Cygwin a l’avantage de supporter la libunix, mais est limité à 32 bits pour l’instant
- WinCaml 5: variantes Qt
-- Qt 5.0.x mac et Qt 4.8.x Linux:
--- correction de l’affichage des accélérateurs des menus Annuler et Rétablir
--- important: contournement d’un bug de Qt 5.0.x mac provoquant la disparition (sans destruction!) de la fenêtre principale alors qu’ayant cliqué
sur sa case de fermeture pour quitter, on annule cette action pour revoir un document ouvert modifié, disparition apparemment irrécupérable
(si on préfère WinCaml à MacCaml …)
-- Qt Windows:
--- nouveaux scripts de construction de WinCaml 5 via Qt adaptés à Qt 4.8.4 (msvc 2010 32 bits) et Qt 5.0.2 (msvc 2012 64 bits)

Archives concernées:
- les binaires WinCaml5
- LinCaml pour Windows (contenant le binaire WinCaml 5 via Qt pour Windows)
- Code source C++ de WinCaml 5

10/05/13: nouveau patch de Caml Light
Remplacement dans le script build, pour la boucle interactive associée à cygwin, de la libgraph unix par la libgraph windows
(le serveur X “XWin.exe” présentant, en liaison avec cette boucle, des défauts de rafraîchissement en mode multiwindow)

10/05/13: WinCaml5 via Qt
Important: correction d’une erreur létale du menu "Fermer" (ne concerne pas WinCaml5 dédié à Windows)
Archives concernées: LinCaml pour Windows (contenant le binaire WinCaml5 via Qt pour Windows) et Code source C++ de WinCaml 5

07/05/13: Nouveau patch de Caml Light
- Patch utilisable aussi avec Cygwin (32 bits)
- Remplacement de bcopy par memmove (avec modification du fichier src/runtime/config.h pour Linux)

05/05/13: Nouveau patch de Caml Light
- Petites corrections sans grande importance du patch précédent ne concernant que Windows
- Ajout de quelques explications concernant le patch

03/05/13: Nouveau patch de Caml Light
Modification du patch précédent ne concernant pas Windows (Rétablissement d’options de compilation sous unix)

02/05/13: Nouveau patch de Caml Light
Il s’agit d’un patch unifié pour OS X, Linux et Windows (architectures 32 ou 64 bits intel ix86 ou x64/x86_64, ou power pc)
permettant de construire les toplevels utilisés par MacCaml, WinCaml, LinCaml et JavaCaml
Il devrait résoudre certains problèmes de rafraîchissement de la fenêtre graphique sous Linux 32 bits
et un problème d’interruption associé à la fenêtre graphique sous OS X
Le patch précédent reste disponible

10/02/13: WinCaml 5 (via Qt)
Correction des dialogues de choix des couleurs (concerne uniquement OS X avec Qt 5.0.x)

03/02/13: WinCaml 5 (via Qt)
Correction de l’affichage des menus (concerne essentiellement OS X avec Qt 5.0.x)

01/02/13: WinCaml 5
- Modification de la passerelle Qt permettant d’utiliser les distributions binaires Qt 5.0.x pour Linux, OS X et Windows
(fonctionne encore aussi avec Qt 4.7.x et Qt 4.8.x) cf. Code source C++ de WinCaml 5 .
- Wincaml avec passerelle Qt utilisant un fichier temporaire pour empêcher le lancement de plusieurs instances, ajout d’un utilitaire "unlock.exe"
pour supprimer ce fichier sous Windows s’il survit à un crash de WinCaml.
Sous OS X ou Linux on pourra supprimer manuellement ce fichier nommé "lockfile" situé dans le sous répertoire WinCaml du répertoire personnel.
Pour WinCaml natif, qui utilise un mutex, redémarrer la session s’il ne peut être relancé aprè un crash.

21/01/13: WinCaml 5
Publication des sources (cf. historique: 29/10/12 partie (3)).

28/12/12: JavaCaml 4.9, MacCaml 4.9 et 4.7, WinCaml 5 et LinCaml 4, WindCaml, WindSCaml:
- Bibliothèques graphiques X11 intégrées: abandon de la police "courier", retour à à la police "fixed"
et à la fonction set_text_size d’origine (vide), "courier" ne semblant plus proposée par certaines distributions Linux
- Simplification et unification de la hiérarchie des sous-dossiers: la version d’OCaml n’intervient plus
- Correction d’une erreur d’importation dans C# de "SendMessage" pouvant rendre WindSCaml inutilisable sur une machine x64
- Correction d’une erreur dans la passerelle Qt de WinCaml (fonctions "fromBytes" et "toBytes") pouvant empêcher le fonctionnement
du fichier de configuration de WinCaml sous Windows
- Prise en compte du chemin d’installation par défaut de la distribution officielle 32 bits OCaml 4.00.1 (chemin C:\OCaml):
sous Windows 32 bits ce chemin est testé en premier
- Nouveaux patches de Caml-light et OCaml.

05/12/12: JavaCaml 4.8, MacCaml 4.9 et 4.7, WinCaml5-src et LinCaml 4:
- Correction des boucles interactives 64 bits caml-light pour X11 censée éviter certains crashes
observés parfois sous OS X lorsqu’on utilise la case de fermeture de la fenêtre graphique.
- Unification de la hiérarchie des sous-dossiers de WinCaml, JavaCaml et LinCaml avec prise en compte d’OCaml 4.00
(le code source java de JavaCaml 4.8 est inchangé)
- Nouveaux patches de Caml-light et OCaml
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)

21/11/12: MacCaml 4.9 et 4.7 et WinCaml 5 (5.3)
Prise en compte d’OCaml 4.00.1

16/11/12: MacCaml 4.9 et 4.7 et WinCaml 5 (5.3)
- MacCaml: correction des bibliothèques graphiques Cocoa de Caml-light et OCaml (gestion des couleurs et des événements);
rétablissement des corrections du 07/12/11 de la bibliothèque graphique caml-light Cocoa détruites le 10/11/12.
- WinCaml: augmentation de la taille des fichiers modifiables par WinCaml (environ 128000 caractères au lieu de 32000).

10/11/12: MacCaml 4.9
Correction des bibliothèques graphiques Cocoa de Caml-light et OCaml (gestion des couleurs et des événements).

29/10/12: WinCaml 5 (5.3)
- (1) Écriture d’un code source C++ de WinCaml indépendant du système d’exploitation, fondé sur la bibliothèque de classes
génériques (STL) et sur une passerelle (ensemble de fonctions et de classes) assurant la liaison avec le système d’exploitation.
- (2) Construction de cette passerelle à partir de Qt, d’où WinCaml pour Linux, Mac OS X et Windows.
- (3) Autre construction à partir de Windows SDK, d’où WinCaml natif pour Windows.
- Publication des parties (1) et (2) : Code source de WinCaml.
- WinCaml pour Linux peut remplacer LinCaml.

02/08/12: MacCaml 4.9 et WinCaml 5 (5.2)
- MacCaml 4.9 est une simple adaptation de MacCaml 4.8 à OCaml 4.00
- WinCaml 5.2 remplace la boucle 64 bits OCaml 3.12.1 intégrée à WinCaml 5.1 par une boucle OCaml 4.00
et peut utiliser la distribution binaire officielle 32 bits d’OCaml 4.00.
Quelques simplifications ont par ailleurs été apportées en interne à la gestion des encodages;
elles peuvent nécessiter une réinitialisation de la configuration de WinCaml (utiliser alors WinCamlInit.bat).
- Noter que ces mises à jour ne concernent pas Caml Light.

06/07/12: WinCaml 5 (5.1)
Correction de l’affichage des numéros de ligne et de colonne:
remplacement des 6 archives WinCaml 5 du 04/07/12
(concerne les changements de mode d’affichage du panneau de sortie).

04/07/12: WinCaml 4.5 et WinCaml 5 (5.1)
Correction du chemin des binaires 64 bits intégrés d’ocaml: remplacement des archives du 03/07/12.
(concerne la présence d’espaces dans le chemin).

03/07/12: WinCaml 4.5 et WinCaml 5 (5.1)
- WinCaml 4.5: meilleure détection des systèmes 64 bits; prise en compte de la version d’ocaml;
réorganisation des sous-dossiers du dossier WinCaml.
- WinCaml 5: corrections diverses concernant la recherche de mots,
l’impression ou l’enregistrement au format RTF et les couleurs de fond, la sélection et le copier-coller,
l’affichage des numéros de ligne et de colonne.
Prise en compte de la version d’ocaml.
Méthode de Démarrage par défaut (WinCamlInit.bat) en cas de corruption du fichier de configuration.
Adoption de la hiérarchie des dossiers de WinCaml 4.5 :
pour utiliser WinCaml 5 (5.1), télécharger la distribution WinCaml 4.5 et y remplacer WinCaml.exe
par celui des six exemplaires proposés de WinCaml 5 qui vous paraît le mieux adapté à votre système.

07/06/12: WinCaml 5 et LinCaml
- WinCaml 5: Remplacement des 6 fichiers du 22/05/12 (nettoyage du code, corrections mineures).
- LinCamlWin: Correction, pour les systèmes Windows x64, du chemin de l’aide d’ocaml.

22/05/12: WinCaml 5
- Correction de la fonction de restauration des réglages par défaut (remplacement des trois exemplaires du 08/05/12).
- Ajout de trois nouveaux exemplaires obtenus à partir des mêmes sources à l’aide des compilateurs MinGW.
Pour utiliser WinCaml 5, remplacer l’ancien WinCaml dans la distribution 4.4

08/05/12: WinCaml 5
WinCaml 5 est, bien que l’interface soit peu modifiée, une application nouvelle n’utilisant plus les MFC:
c’est une application Win32/Win64 utilisant la bibliothèque C++ de classes génériques (Standard Template Library)
compilée de trois façons:
- à l’aide de MSVC6 (x86), utilisable avec Windows 2000 professionnel et Windows ultérieurs.
- à l’aide de MSVC Express 2010 (x86), utilisable avec Windows XP SP3 et Windows ultérieurs.
- à partir de Microsoft SDK v7.0 (x64), préférable pour les versions 64 bits courantes de Windows.
Pour utiliser WinCaml 5, remplacer l’ancien WinCaml dans la distribution 4.4
Nouveautés:
- possibilité de sauver les fichiers au format RTF.
- Gestion des encodages usuels (mac, unix, win, utf8).
Attention: le fonctionnement interne ayant beaucoup changé, gare aux bogues!

31/01/12: WindCaml et WindSCaml
cf. WinCaml 4.4 (19/01/12) ci-dessous pour les modifications.
Les nouvelles versions de WindCaml et WindSCaml fonctionnent avec .Net 4.0 (Windows XP sp3 ou Windows 7).

29/01/12: LinCaml 3.2 et LinCaml.exe
- Pour cette mise à jour voir JavaCaml 4.8 ci-dessous.
- LinCaml.exe est LinCaml 3.2 compilé pour Windows.

26/01/12: JavaCaml 4.8
- Correction de l’indenteur pour ocaml: concerne la présence d’un point-virgule près de end ou done.
- Correction de set_window_title (concerne caml-light X11: cf 15/01/12 ci-dessous).
- Messages de caml-light en français si la session est ouverte en français.
- Devrait convenir à la plupart des systèmes mac, windows ou linux usuels.

25/01/12: MacCaml 4.8
Cette version allégée de MacCaml 4.7 limitée à l’architecture x86_64 (Snow Leopard ou Lion) remplace MacCaml 4.6.
Elle corrige le blocage des dessins en cours d’exécution et ultérieurs par miniaturisation de la fenêtre des bibliothèques
graphiques caml-light et ocaml cocoa.

24/01/12: MacCaml 4.7
Version universelle remplaçant la version 4.4 en faisant les corrections des versions 4.5 et 4.6; fonctionne sous
Tiger (architecture ppc 32), Leopard (architecture i386), Snow Leopard et Lion (architectures i386, x86_64).
Cette version corrige aussi le blocage des dessins en cours d’exécution et ultérieurs par miniaturisation de la fenêtre
des bibliothèques graphiques caml-light et ocaml cocoa.

19/01/12: WinCaml 4.4:
- Correction de l’indenteur pour ocaml.
- Messages de caml-light en français.

17/01/12: MacCaml 4.6
(Version limitée à Snow Leopard et Lion remplaçant MacCaml 4.5)
- Correction de l’indenteur pour ocaml: concerne la présence d’un point-virgule près de end ou done.
- Modification de wait_next_event dans les bibliothèques graphiques caml-light et ocaml cocoa
(fonction rendue plus compatible avec la version officielle).
- Correction de draw_image et blit_image dans les bibliothèques graphiques cocoa pour éviter un crash.
- Correction de set_window_title (concerne caml-light X11: cf 15/01/12 ci-dessous).
- Messages de caml-light en français si la session est ouverte en français.

15/01/12: patch_cl75.zip
Correction de set_window_title: cette fonction, qui ne fait pas partie de la bibliothèque graphique officielle de caml-light,
empruntée à ocaml-3.07, oubliait de réserver une place à l’octet nul en fin d’une chaîne C, pouvant occasionner un crash
(erreur apparue dans ocaml-3.07 mais corrigée dès ocaml-3.08); ne concerne que le graphisme X11, pas windows.

11/12/11: Remplacement de MacCaml 4.5 du 08/12/11
(fichiers d’aide de caml mal placés dans le bundle MacCaml).

09/12/11: patch_cl75.zip
Le patch_cl75 du 06/12/11 devait prévenir certain crashs, celui-ci est censé y parvenir.
(crashs observables avec l’architecture x64 sur l’exemple "grahanoi-fra.ml" en augmentant
éventuellement un peu le paramètre entier de la fonction "jeu")
Mise à jour correspondante de WinCaml, WindCaml/WindSCaml, LinCaml et JavaCaml.

08/12/11: WindSCaml, WindCaml et MacCaml 4.5
- WindSCaml et WindCaml: correction d’une erreur pouvant empêcher le démarrage immédiat de caml
- MacCaml: correction d’un problème de retour à la ligne automatique en sortie observé seulement sous Lion

07/12/11: patch_cl75.zip et MacCaml 4.5
- Remplacement dans patch_cl75.zip des fins de lignes windows du script makePatch par des fins de lignes unix
- Correction de la bibliothèque graphique caml-light native de MacCaml concernant la création d’images:
Cette correction, limitée ici à l’architecture x86_64, devrait éviter certains crashs associés à la collecte de déchets
(crashs observables sur l’exemple "grahanoi-fra.ml" en augmentant éventuellement un peu le paramètre de la fonction "jeu").

06/12/11: patch_cl75.zip
permettant de compiler Caml Light sur la plupart des systèmes usuels 32 ou 64 bits: Windows, Mac OS X, Linux
et de produire des boucles interactives Caml Light adaptées à JavaCaml, MacCaml et WinCaml:
Correction de la bibliothèque graphique windows pour caml light dérivée de la bibliothèque graphique d’ocaml
concernant la création d’images; mise à jour correspondante de WinCaml, WindCaml/WindSCaml, LinCaml et JavaCaml.
Cette correction devrait éviter certains crashs associés à la collecte de déchets.

30/11/11: MacCaml 4.5 pour Snow Leopard ou Lion (architecture X86_64)
à utiliser avec caml-light intégré ou avec ocaml-3.12.1 installé de façon standard
- mis à jour et compilé avec xcode 4.2.1 (Apple LLVM 3.0)
- avec gestion de la case de fermeture de la fenêtre graphique x11 pour ocaml-3.12.1
(gestion défectueuse dans la version précédente).

28/11/11: Patch de la librairie graphique x11 d’ocaml pour MacCaml et JavaCaml.
Remplace celui du 05/01/11 qui semble ne plus remplir son rôle (gestion de la case de fermeture
de la fenêtre graphique de x11) avec les dernières versions de Mac OS X ou ocaml.

09/11/11: WindCaml et WindSCaml
- Transformation de WindCaml et WindSCaml en “applications à instance unique”.
- Possibilité d’ouvrir un ou plusieurs fichiers .ml, .oml, .mli directement à partir du bureau par “ouvrir avec... ”
ou par glisser-déposer sur la fenêtre principale ou sur l’icône de l’application, ou par double-clic (pour un seul fichier),
après avoir associé l’application de façon permanente aux extensions .oml, .ml et .mli à l’aide de “ouvrir avec... ”

19/10/11: WindCaml et WindSCaml
Correction d’une exception pouvant empêcher le démarrage des deux applications.

17/10/11: WindCaml et WindSCaml
Correction du fonctionnement avec démarrage différé de caml (concerne les nouveaux documents).

14/10/11:WindCaml et WindSCaml
Correction d’un dysfonctionnement sérieux de certaines boîtes de dialogue.

12/10/11: WindSCaml: Correction du fonctionnement de l’impression sous windows 7.
WindCaml: changement de dialogue d’impression.

09/10/11:WindCaml et WindSCaml
WindSCaml est construit à partir du langage C# alors que WindCaml est construit à partir de C++,
mais à part ça les deux applications sont à peu près identiques.
- Pour tester ou utiliser WindSCaml, il faut avoir déjà installé WindCaml:
en effet WindSCaml.exe s’installe à côté (ou à la place) de WindCaml.exe dans le même répertoire.
- Quelques défauts de WindCaml apparus lors de la traduction de C++ en C# ont été corrigés et
WindCaml a été équipé de ocaml-3.12.1 pour Windows 64.

30/09/11: WindCaml
Correction de l’ouverture d’un document avec démarrage différé de caml.

28/09/11: WindCaml
Correction du comportement au redémarrage de caml après usage de la commande “Stop”.
Réorganisation interne et suppression de code inutile.

23/09/11: adjonction à LinCaml.exe et LinCaml 3.1 d’un fichier de localisation français.

22/09/11: LinCaml pour Windows
- LinCaml.exe, prêt à l’emploi pour Windows XP et Windows 7, peut coexister avec WinCaml et WindCaml ou les remplacer.
- Remplaçement de la distribution source de LinCaml 3.0 par la distribution LinCaml 3.1
(révision du fonctionnement des fenêtres et, sous Windows, de la gestion des tâches)
- Retrait des versions obsolètes de LinCaml fondées sur GNUstep.

20/09/11: WindCaml pour Windows XP et Windows 7
Variante de WinCaml fondée sur les “Windows Forms” (plate-forme .NET)
WindCaml s’installe par simple décompression de l’archive WindCaml.zip
et peut être utilisée sur la même machine que WinCaml

12/07/11: LinCaml 3.0, JavaCaml 4.7, MacCaml 4.4, WinCaml 4.3
Mise à jour pour utilisation avec ocaml 3.12.1

11/04/11: LinCaml 3:
Remplacement des fichiers LCFrame.h, LCFrame.cpp et des fichiers de localisation.

10/04/11: LinCaml 3:
Remplacement des fichiers LCTaskHandler.cpp et LCHighlighter.cpp

06/04/11: LinCaml 3:

Entièrement nouveau, proche de WinCaml, opensource GPL, fondé sur la bibliothèque C++ Qt 4.7,
conçu d’abord pour Linux, fonctionne aussi avec Mac OS X ou Windows.

31/01/11: JavaCaml 4.7, MacCaml 4.4, WinCaml 4.3 (remplacement des fichiers précédents)
Corrections des fichiers lexicaux concernant la représentation littérale du type float et la présence
éventuelle du caractère "quote" dans les identificateurs: elles suppriment l’introduction par les
fonctions d’indentation d’espaces rendant les fichiers sources incorrects.

14/01/11: WinCaml 4.3
- Correction (incomplète) du contrôle par clavier de la sélection du panneau d’entrée.
- Correction de la mise en surbrillance des symboles appariés (cas où le partenaire n’est pas trouvé).
- Doublement de la taille de la liste des fichiers récents (portée à 8).
- Mémorisation à chaque fermeture de fenêtre de la position de la cloison de séparation des panneaux.

11/01/11: JavaCaml
Correction des dialogues “Enregistrer” et “Enregistrer sous” (remplacement des fichiers du 08/01/11).

08/01/11: JavaCaml 4.7, MacCaml 4.4, WinCaml 4.2
- Révision de l’indenteur pour ocaml concernant les parenthèses.
- Remplacement du fichier float.zi dans le répertoire caml-light.

05/01/11: ocaml
patch de la librairie graphique x11 d’ocaml utilisé par MacCaml et JavaCaml.

04/01/11: Caml Light 75:
il y a confusion entre sinus hyperbolique “sinh” et sinus “sin” dans cl75/src/lib/float.mli
Modification en conséquence des quatre patchs de décembre (en fait de leurs scripts).

29/12/10: Synthèse des patchs précédents
- patch_cl75.zip est une archive contenant un patch pour windows et un patch pour unix permettant
de compiler Caml Light sur la plupart des systèmes usuels 32 ou 64 bits: Windows, Mac OS X, Linux
et un script produisant des boucles interactives Caml Light adaptées à JavaCaml, MacCaml et WinCaml.
- Remplacement du Patch DGL du 21/12/10 qui ne fonctionnait pas en mode 32 bits (correction du script).

24/12/10: patch_cl75_win32.zip
Nouveau fichier remplaçant celui du 15/12/10 qui contenait une erreur de format d’entiers.

21/12/10: JavaCaml 4.6
- Remplacement des deux archives du 20/12/10 (changements mineurs).
JavaCaml fonctionne aussi sous Ubuntu 10.10 "Maverick Meerkat" amd64.
- patch_cl75_DGL.zip de cl75unix.tar.gz produisant pour Linux les boucles interactives caml-light 32 et 64 bits de JavaCaml 4.6.

20/12/10: JavaCaml 4.6
Mise à jour pour utilisation avec ocaml 3.12.0:
- Correction et adaptation de l’indenteur pour ocaml (prise en compte des "extensions du langage").
- Introduction des boucles interactives 64 bits caml-light et ocaml déjà présentes dans WinCaml (gestion analogue).
- Bibliothèques graphiques ocaml intégrées 32 et 64 bits pour Debian Gnu Linux "Lenny" i686 et amd64.

15/12/10: JavaCaml 4.5, MacCaml 4.3, WinCaml 4.1
Correction de l’indenteur pour ocaml (option "indenter après in"):
remplacement des fichiers des 19/11/10, 10/12/10 et 12/12/10.

15/12/10: WinCaml
Patchs patch_cl75_win32.zip et patch_cl75_win64.zip de cl75unix.tar.gz produisant les boucles interactives Caml Light associée à WinCaml.

12/12/10: WinCaml 4.1
Mise à jour pour utilisation avec ocaml 3.12.0:
- remplacement de la boucle interactive intégrée ocaml 3.11.2 par une boucle 3.12.0
- correction et adaptation de l’indenteur pour ocaml (prise en compte des "extensions du langage").

10/12/10: MacCaml 4.3
Mise à jour pour utilisation avec ocaml 3.12.0
(bibliothèque graphique; corrections et compléments à l’indenteur pour ocaml).

25/11/10: MacCaml 4.2 et WinCaml 4.0
Indentation ocaml: correction d’une erreur pouvant bloquer MacCaml et WinCaml
dans une boucle infinie en cas de fichier source incorrect. (erreur absente dans JavaCaml).
Remplacement des fichiers du 19/11/10.

19/11/10: MacCaml 4.2, WinCaml 4.0, JavaCaml 4.5
Indentation ocaml: changements mineurs concernant les opérateurs.
Remplacement des fichiers du 11/11/10.

11/11/10: MacCaml 4.2, WinCaml 4.0, JavaCaml 4.5
Nouvelle correction des fonctions d’indentation: remplacement des fichiers du 07/11/10.

07/11/10: MacCaml 4.2, WinCaml 4.0, JavaCaml 4.5
Correction des fonctions d’indentation.

18/10/10: WinCaml 3.9
Correction de quelques erreurs introduites dans la version 3.8.

15/10/10: MacCaml 4.1
- Localisation en français (menus, dialogues…).
- Retouches lexicales.

12/10/10: JavaCaml 4.4
- Correction du démarrage du gestionnaire “Undo/Redo”.
- Introduction, comme pour MacCaml et WinCaml, d’un indenteur expérimental optionnel pour ocaml.
- Prise en compte des différentes représentations littérales des caractères (coloration syntaxique et indentation),
et mise à jour des mots ou symboles réservés.

04/10/10: MacCaml 4.0 et WinCaml 3.8
- MacCaml: Modification interne de l’indenteur pour ocaml.
- WinCaml: Introduction, comme pour MacCaml, d’un indenteur expérimental optionnel pour ocaml,
prise en compte des différentes représentations littérales des caractères (coloration syntaxique et indentation),
mise à jour des mots ou symboles réservés, définition interne des variables d’environnement PATH et OCAMLLIB
en cas d’utilisation de la boucle interactive 64 bits ocaml intégrée à WinCaml (permet d’exécuter l’exemple minilogo).

29/09/10: MacCaml 3.9
- Introduction d’une fonction d’indentation expérimentale pour ocaml, activable dans les préférences, censée
prendre en compte la plupart des constructions de la syntaxe classique d’ocaml.
- Prise en compte des différentes représentations littérales des caractères (coloration syntaxique et indentation).
- Mise à jour des mots ou symboles réservés.
- Correction d’une erreur de taille de tabulation se manifestant à certains passages à la ligne.

03/09/10: MacCaml 3.8, WinCaml 3.7:
Coloration syntaxique: correction d’une erreur lexicale concernant les commentaires
introduite dans la version 3.7 de MacCaml et la version 3.6 de WinCaml.

21/08/10: MacCaml 3.7, WinCaml 3.6, JavaCaml 4.3:
Coloration syntaxique: ajout de mots clés de ocaml (module, class…) hors programme CPGE.
Ces mots clés restent cependant ignorés par la fonction d’indentation.

17/08/10: MacCaml:
Correction d’un problème de défilement horizontal de la version 3.6.

16/08/10: MacCaml 3.6:
- Rénovation de l’interface: boutons remplacés par menus et barre d’outils escamotable;
barre d’état optionnelle présentant la position du point d’insertion de l’entrée.
- Révision du fonctionnement du panneau de sortie (plus proche de JavaCaml et WinCaml).
- Correction d’une erreur se produisant à l’envoi d’une commande vide (panneau d’entrée vide).
- Correction d’un échec de la fonction d’indentation en présence de commentaires japonais.
- Correction de défauts occasionnels de rafraîchissement lors d’un changement de fonte.

16/08/10: JavaCaml 4.2:
Nettoyage de code (suppression de conversions de types ou d’instructions inutiles).

01/08/10: JavaCaml 4.1:
Correction d’un problème de rétention de mémoire survenant à chaque fermeture de fenêtre.

30/07/10: JavaCaml 4.0:
- Gestion plus complète de “undo/redo”.
- Affichage optionnel de la position du point d’insertion du panneau d’entrée.
- Correction d’un bug de la fonction d’indentation concernant les chaînes de caractères écrites sur plusieurs lignes.
- Nettoyage et mise en conformité du code source mettant fin aux avertissements du compilateur.

17/07/10: JavaCaml 3.9:
Révision du fonctionnement et de l’affichage du panneau de sortie.

14/07/10: WinCaml 3.5:
- Révision des chaînes de caractères (Rôle du backslash).
- Révision du fonctionnement de la coloration syntaxique (coloration au fur et à mesure
de l’affichage du texte convenant mieux aux gros fichiers).
- Révision du fonctionnement du panneau de sortie.

08/07/10: MacCaml 3.5:
- Révision des chaînes de caractères (Rôle du backslash).
- Support de l’encodage utf-8, comme pour JavaCaml.

06/07/10: JavaCaml 3.8:
Correction du fonctionnement du menu général “Encodage”.

02/07/10: JavaCaml 3.7:
- Possibilité d’interrompre caml sous Windows. JavaCaml paraît ainsi fonctionner de façon
quasiment identique sous Linux, Mac OS X et Windows.
- Correction de la gestion des interruptions de caml sous Mac OS X Tiger (10.4.11).
- Correction d’erreurs de localisation introduites dans la version 3.6.

27/06/10: JavaCaml 3.6:
- Support de l’encodage UTF-8. Détection automatique optionnelle de l’encodage d’un fichier source.
- Rétablissement de la sauvegarde des options générales.
Sous Linux JavaCaml pourrait remplacer LinCaml.

22/06/10: JavaCaml 3.5:
- Coloration syntaxique.
- Révision des chaînes de caractères (Rôle du backslash).

22/05/10: JavaCaml 3.4:
Possibilité d’afficher ou de masquer par simple clic les commandes une par une dans le panneau de sortie.

13/05/10: JavaCaml 3.3:
- Introduction de trois options d’affichage dans le panneau de sortie.
- Possibilité, dans chaque fenêtre, d’arrêter et de relancer caml et d’effacer le panneau de sortie.

10/04/10: JavaCaml 3.2, MacCaml 3.4 et WinCaml 3.4:
Quelques corrections dans le traitement des chaînes de caractères et la fonction d’indentation.

06/04/10: WinCaml:
WinCaml v3.3 est équipé, comme pour Caml-light, d’une boucle interactive 64 bits ocaml-3.11.2 pour Windows 7
(Nativeint.size = 64 au lieu de 32) complétée par quelques bibliothèques suffisantes pour les exemples,
en attendant la publication par l’inria d’une distribution binaire officielle complète 64 bits pour Windows.
Il devrait fonctionner sur tout PC récent à architecture courante: amd64 (alias x64 ou x86_64).
Les fichiers NOUVEAU.txt et INSTALLATION.txt contiennent quelques informations supplémentaires.
Les fichiers d’aide d’ocaml ne sont pas inclus.

25/03/10: WinCaml:
WinCaml v3.2 est équipé d’une boucle interactive 64 bits Caml Light pour Windows 7.
(max_int = 4611686018427387903 au lieu de 1073741823); pour PC récent à architecture courante amd64.

18/03/10: MacCaml:
MacCaml v3.3 est, sans autre changement, équipé de boucles interactives 64 bits Caml Light pour Snow Leopard.

10/03/10: JavaCaml v3.1:
Quelques retouches et code source.

05/03/10: JavaCaml et MacCaml:
- JavaCaml v3 traite la synchronisation commandes/réponses, le filtrage et l’affichage
des réponses, les réglages utilisateur, la gestion des interruptions et la localisation.
JavaCaml, largement réécrit, fonctionne avec la machine virtuelle jre 5 de Sun Microsystems.
- MacCaml v3.2 est, sans autre changement, muni de nouvelles bibliothèques graphiques intégrées corrigeant certains problèmes
apparus sous Snow Leopard (fonctions fill_rect et blit_image).

13/02/10: JavaCaml:
Fusion de JavaCaml et JavaOCaml; hormis les couleurs, JavaCaml v2 présente à peu près les mêmes fonctionnalités
que MacCaml et WinCaml et fonctionne indifféremment sous Mac OS X, Linux, Windows XP ou Windows 7
avec la machine virtuelle jre 6 de Sun Microsystems.

14/01/10: MacCaml et WinCaml:
- MacCaml v3.1: corrige un problème de concurrence entre entrée différée et entrée directe.
- WinCaml v3.1: permet d’afficher ou de masquer totalement ou partiellement les sources dans le panneau de sortie.

03/01/10: MacCaml:
MacCaml v3.0: remplace l’exemplaire du 28/12/09;
corrige des erreurs d’affichage en sortie se produisant après avoir actionné le bouton stop sans effacer le panneau de sortie.

28/12/09: MacCaml:
MacCaml v3.0: possibilité d’afficher ou de masquer totalement ou partiellement les sources dans le panneau de sortie.

25/11/09: MacCaml:
MacCaml v2.9: Suppression de fichiers en surnombre dans le bundle MacCaml.app.

23/11/09: LinCaml v2.4 pour versions récentes de GNU/Linux:
Debian 5.0 (Lenny), Ubuntu 9.10 (Karmic Koala), Fedora 12, openSuse 11.2
Remplace l’exemplaire du 08/11/09.

13/11/09: WinCaml:
WinCaml v3.0 inscrit dans la barre d’état la position courante du curseur (ou du début de la sélection) du panneau actif.

11/11/09: WinCaml:
WinCaml v2.9 corrige un problème de processus caml orphelins parfois rencontré sous Windows XP.

09/11/09: WinCaml:
WinCaml v2.8 corrige un problème d’indentation de la sortie d’ocaml dans WinCaml.

08/11/09: WinCaml et LinCaml:
- WinCaml v2.7: restructuration et simplification des sources; fonctionne sous Windows 2000, XP et Windows 7.
- LinCaml v2.4 pour Ubuntu 9.10 (Karmic Koala): simple recompilation rétablissant le fonctionnement des préférences.

02/10/09: MacCaml:
- MacCaml v2.9 corrige quelques problèmes rencontrés par les bibliothèques graphiques
ocaml intégrées et résout un conflit graphique entre instances simultanées de MacCaml.

28/09/09: MacCaml:
- MacCaml v2.8 fonctionne avec Tiger 10.4.11, Leopard et Snow Leopard
et améliore la synchronisation du panneau des préférences.
Les bibliothèques graphiques intégrées supportent l’architecture 64 bits sous Snow Leopard.

04/09/09: MacCaml et LinCaml:
- MacCaml v2.7 améliore la synchronisation du panneau des préférences et ajoute quelques
raccourcis clavier (cf. fichier NOUVEAU.rtf).
- LinCaml v2.4 est proche de MacCaml v2.7.

21/08/09: MacCaml:
- MacCaml v2.6 synchronise l’affichage de la fenêtre principale de MacCaml, le menu “Format”
et le panneau des fontes avec le panneau des préférences et corrige deux erreurs d’allocation mémoire.
Il est adapté aux versions 3.10.2, 3.11.0 et 3.11.1 d’ocaml.

16/08/09: MacCaml et WinCaml:
- MacCaml v2.5 corrige la fonction “Annuler” des préférences et l’affichage d’erreurs par ocaml
en présence de tabulations.
- WinCaml v2.6 corrige le fonctionnement du panneau de sortie et l’affichage d’erreurs par ocaml
en présence de tabulations.

14/08/09: LinCaml et GNUWinCaml:
- LinCaml v2.3 corrige la fonction “Annuler” des préférences et un problème de coloration syntaxique
concernant les chaînes de caractères et les commentaires et mémorise les positions des fenêtres.
- GNUWinCaml v2.3 est à peu près LinCaml v2.3 sous Windows.

13/07/09: LinCaml:
LinCaml v2.2 est proche de MacCaml v2.4 et est adapté à ocaml-3.11.1

18/05/09: MacCaml et WinCaml:
MacCaml v2.4:
- La commande (signal) “interrupt” vide à présent la file des commandes envoyées à caml.
- Suppression de mises en surbrillance temporaires indésirables de symboles appariés.
WinCaml v2.5:
- La commande (signal) “interrompre” vide à présent la file des commandes envoyées à caml.
- Remplacement de “ocaml” par “ocamlrun ocaml” dans la ligne de commande démarrant ocaml.
- Correction d’un bug de rafraîchissement du panneau d’entrée.
- Correction, pour la bibliothèque graphique intégrée, d’un problème d’interruption de “wait_next_event”.
- Suppression de mises en surbrillance temporaires indésirables de symboles appariés.

15/05/09: MacCaml et WinCaml:
MacCaml v2.3:
- Support de l’extension “.oml” pour les fichiers ocaml.
- Aménagement d’un tampon d’envoi direct de données à caml en fin de panneau d’entrée.
- Correction d’un problème de rafraîchissement de fenêtre après changement de disposition des panneaux.
- Correction d’un problème d’interruption de “wait_next_event”.
WinCaml v2.4:
- Aménagement d’un tampon d’envoi direct de données à caml en fin de panneau d’entrée.
- Correction d’un problème de la fonction d’indentation lié à la syntaxe des constantes de type “char” dans ocaml.

30/04/09: MacCaml et WinCaml:
- Révision de la justification à gauche de la sortie de ocaml.
- Implémentation sommaire de “set_text_size” (fenêtre graphique de caml-light et ocaml).

02/03/09: AFetLR.nb: algorithme de Mac-Naughton et Yamada.

15/02/09: MacCaml et WinCaml: concerne les chaînes de caractères, les commentaires et l’indentation;
les commentaires ne sont plus transmis à Caml et au panneau de sortie et leur relation avec les chaînes de caractères a été revue.

31/07/08: LinCaml (fonctionne avec ocaml-3.10.x sous divers Linux équipés de GNUstep).