English version
Accueil     Ŕ propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis ŕ jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml ŕ l'adresse ocaml.org.

Browse thread
OSR - "Batteries included" - Standardizing syntax extensions and extra libraries
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2008-03-04 (17:12)
From: Berke Durak <berke.durak@e...>
Subject: OSR - "Batteries included" - Standardizing syntax extensions and extra libraries
Hello all,

David Teller suggested that I launch a thread on my suggestion at the end of the
"different records, same field name?" thread.

The idea is to define, as part of the OSR process, a list of
"standard" syntax extensions and libraries.  A meta-distribution of Ocaml would
then include, for every element of the ocaml toolchain, a version that has
access to those extensions and libraries.  The name of the extended tool would
be obtained by adding an "s" to the original name.

Hence, assuming that we agree that Alain Frisch's openin and, say, Pcre should
be part of the standard, then

   ocamlcs (resp. ocamlopts)

would be a script calling ocamlc (resp. ocamlopt) with options

  -I +pcre -pp pa_openin

Then we'd tell people new to Ocaml to use those instead; the existing users
will be told to just add an "s".

This would make the answer of the question

   "how do I open modules locally and parse XML fetched thru HTTP in Ocaml?"

become as simple as

   I assume you are using Ocaml-OSR.
   Use Netclient and Xmlm; for local modules, do "open M in...".

instead of

   First, you must install Netclient and Xmlm.  What OS are you using?
   For debian, you must do apt-get install ocaml-netclient ocaml-xmlm.
   For NetBSD, you must install GODI then Ocamlfind.  Then, you must
   install the openin extension and -I +netclient -I ... to your command line.

A few switches such as -only unix,pcre should be added to ocamlcs to prevent it
from linking it everything if this is a concern.