OCaml 5.00
- April 1, 2014
(English version below)
Chers utilisateurs, chères utilisatrices,
La nouvelle version du langage Java intègre les lambdas. Nous (concepteurs de langages fonctionnels) avons gagné; il y a dix ans encore nous nous battions pour faire comprendre aux programmeurs “courant principal” les intérêts des fonctions d’ordre supérieur, maintenant c’est eux qui écrivent des billets de journaux intimes à leur gloire.
Pour célébrer ce changement, et le besoin ainsi diminué de convaincre les masses incultes, nous avons décidé de revenir sur une décision démagogique et trop coûteuse dans la conception du langage Chamelle: sa soumission à la langue anglaise.
type 'a arbre = Feuille de 'a | Nœud de 'a arbre * 'a arbre
soit rec feuille_existe p arbre =
filtre arbre avec
| Feuille v -> p v
| Nœud (gauche, droite) ->
feuille_existe p gauche
|| feuille_existe p droite
soit a_une_feuille_paire =
feuille_existe (fun n -> n mod 2 = 0)
C’est avec plaisir et fierté que nous célébrons la naissance d’Otto Von Bismarck en vous faisant découvrir Chamelle numéro 5, première version en français de votre langage préféré. Nous espérons que l’usage de la “langue de la diplomatie” permettra aux communautés informatiques un dialogue plus serein.
$ cat unis.ml
soit unis = 1
soit 1 = unis
$ ./ocamlc unis.ml
File "unis.ml", line 2, characters 5-6:
Avertissement 8: ce filtrage de motif n'est pas exhaustif.
Ceci est un exemple de valeur qui n'est pas filtrée:
0
Cette libération linguistique nous a donné des ailes, et la première sortie de Chamelle numéro 5 contient un certain nombre de fonctionnalités prometteuses et améliorations diverses.
Dans le but de favoriser les contributions externes, nous avons laissé en anglais la documentation du langage, et les commentaires du compilateur. Vos rustines de traduction sont les bienvenues.
Bien sûr, nous attachons toujours autant d’importance à la
rétro-compatibilité, et nous sommes assurés que le code écrit pour les
versions précédentes du langage fonctionne toujours : pas de blague !
Pour des raisons diverses, vous pourriez même avoir besoin d’une
conversion de la nouvelle syntaxe vers l’ancienne, disponible grâce à
une nouvelle option du compilateur: utilisez la variable d’environnement
OCAML_LEX_NO_ROUNDTRIP à 1 pour désactiver toute traduction, et
OCAML_PERFIDE_ALBION (ou l’option de ligne de commande
-perfide-albion
pour traduire vers l’anglais).
Les sources du compilateur sont disponibles à cette adresse : http://caml.inria.fr/pub/distrib/chamelle-5.00/chamelle-5.00.zip Des versions binaires seront mises a votre disposition très prochainement.
– Gabriel Scherer et Jacques-Henri Jourdan pour l’équipe Chamelle.
.
.
.
Dear users, dear users,
The new version of the Java language includes lambdas . we ( designers of functional languages ) have won and there was ten years yet we fight to understand programmers ” mainstream ” the interests of higher-order functions , Now it is they who write tickets diaries their glory.
To celebrate this change, and thus reduced the need to convince the uneducated masses , we decided to reverse a decision demagogic and costly in design Chamelle language : its submission to the English language.
type 'a tree = Leaf of ' a | Node of 'a tree *' a tree
or rec feuille_existe p = tree
shaft with filter
| Leaf v - > p v
| Node ( left, right) ->
feuille_existe left p
| | P feuille_existe right
is a_une_feuille_paire =
feuille_existe (fun n - > n mod 2 = 0)
It is with pleasure and pride that we celebrate the birth of Otto Von Bismarck making you discover Chamelle number 5 , first French version of your preferred language. We hope that the use of ” language of diplomacy ” will allow communities IT a more serene dialogue.
$ Cat unis.ml
be united = 1
ie 1 = United
$ . / Ocamlc unis.ml
File " unis.ml " , line 2 , characters 5-6:
Warning 8: this pattern-matching is not exhaustive .
This is an example of a value that is not filtered :
0
This language release has given us wings, and the first Chamelle output number 5 contains a number of promising features and various improvements .
In order to encourage external contributions , we left English language documentation , and comments compiler . Your translation patches are welcome.
Of course, we always attach much importance to the backward
compatibility , and we are assured that the code written for previous
versions of the language always works no joke ! For various reasons ,
you might even need a conversion of the new to the old syntax ,
available through a new compiler option : use the variable environmental
OCAML_LEX_NO_ROUNDTRIP to 1 to disable all translation and
OCAML_PERFIDE_ALBION (or command line option
-perfide-albion
to translate into English ) .
The sources of the compiler are available at this address: http://caml.inria.fr/pub/distrib/chamelle-5.00/chamelle-5.00.zip Binary versions will be at your disposal very shortly.
- Gabriel Scherer and Jacques-Henri Jourdan for Chamelle team.