« Proposition d'article » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
Ligne 26 : Ligne 26 :
== Rubrique : Développer ==
== Rubrique : Développer ==


 
* [[Ocaml]] : une présentation du langage ocaml
== Le language Ocaml ==
 
Le language Ocaml est développé en France par une équipe de chercheurs de l'[http://www.inria.fr INRIA], dont la plupart utilisent (et contribuent activement) à Linux et au logiciel libre. Il est utilisé par une communauté croissante, aussi bien dans le monde académique (de nombreux chercheurs prototypent leurs idées en Ocaml) ou universitaire (son prédécesseur Caml est enseigné en classe prépa, premier cycle) que dans le monde industriel (dans des petites startup comme dans des grosses multinationales). Ocaml est language fonctionnel et à objets, avec un typage statique (et inférence de types). À cet égard il est assez différent des languages habituels sous Linux (comme C, C++, Perl, Python). Il existe plusieurs grosses applications développées en Ocaml -aussi bien libres que propriétaires-. Une application libre potentiellement utile à beaucoup est '''Unison''' pour synchroniser (càd copier) des fichiers entres machines différentes, disponible [http://www.cis.upenn.edu/~bcpierce/unison/ ici]. Il y aussi '''Advi''' (visualiseur pour fichiers dvi produits par LaTeX) qui permet notamment de faire de beaux transparents (y compris avec des formules de mathématiques, de l'animation, des fenêtres de démo de logiciels) disponible [http://pauillac.inria.fr/advi/ ici] et le paquet Whizzytex (utilisant advi) pour visualiser immédiatement en temps quasi réel un document LaTeX pendant son édition.
 
 
== L'implémentation d'Ocaml ==
 
Le language Ocaml a sa page  [http://caml.inria.fr ici]. Son implémentation est libre. Il y a en réalité plusieurs variantes d'implementation (partageant du code en commun):
 
l'interprète interactif dit ''toplevel'', par la commande '''ocaml'''; le principal intérêt d' '''ocaml''' est de tester '''interactivement''' une (ou quelques) nouvelles fonctions (éventuellement rajoutées à un gros programme existant). Il y a aussi un débogueur '''ocamldebug'''
 
le compilateur vers du code-octet ''bytecode compiler'', par la commande '''ocamlc''' (le code-octet produit a sa machine virtuelle propre '''ocamlrun'''; ce code octet est différent de ceux de Java, Lua ou Parrot).
 
le compilateur natif (sur AMD64, x86, PowerPC, Sparc etc...) ''native compiler'', par la commande '''ocamlopt'''. Les programmes compilés avec ocamlopt s'exécutent à peu près aussi rapidement que leur équivalent C ou C++.
 
Il existe une communauté grandissante de développeurs Ocaml. Le '''Ocaml Hump''' [http://caml.inria.fr/cgi-bin/hump.fr.cgi ici] contient une collection croissante de logiciels et bibliothèques libres codé(e)s en Ocaml; on peut développer des applications Web (avec Wdialog par exemple), interfacer des SGBDs, invoquer des appels systèmes etc... Ocaml est très puissant (et originellement développé) pour le traitement symbolique de l'information: compilateurs, démonstrateurs de théorèmes, etc..
 
J'aurais d'autres choses à dire sur Ocaml. N'hesitez pas à m'y inciter.
--[[Utilisateur:Basiles|Basiles]] 9 nov 2005 à 21:45 (CET)


== Rubrique : Léavancé ==
== Rubrique : Léavancé ==

Version du 9 novembre 2005 à 23:08

Proposition d'article

Indiquer ici les articles qui manquent et que vous même désirez créer, puis créez les ! Si vous avez besoin de mettre des images dans votre article, n'hésitez pas à demander à Léa les droit d'éditeurs. Ne mettez pas des articles que vous désireriez voir écrits par quelqu'un d'autre que vous !

Note : pour proposer un nouveau truc ou une nouvelle astuce, utiliser cette page.

  • exemple : [[Nom de l'article]]

Rubrique : Installation

Rubrique : X Window

Rubrique : Matériel

Rubrique : Logiciels

Rubrique : Le réseau

Debian GNU/Linux et IPv6. Thomas Carlu 25 oct 2005 à 1:15 (CEST)

Rubrique : Administrer

Fait. Bien qu'améliorable, l'article me semble complet. Vincent Ramos 26 oct 2005 à 00:22 (CEST) ;

Rubrique : Noyau et modules

Rubrique : Développer

  • Ocaml : une présentation du langage ocaml

Rubrique : Léavancé