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
Re: [Caml-list] OCaml for system programming?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2001-09-11 (17:10)
From: Benjamin C. Pierce <bcpierce@s...>
Subject: Re: [Caml-list] OCaml for system programming?
> Is it reasonable to use OCaml for (low-level) system programming?
> I have implemented some tools for filesystem maintenance
> (things like resizing, ...) in C. As a challenging exercise
> (for an OCaml newbie) I planned to reimplement my tools in
> OCaml. But I don't know if it is managable at all!!

For at least certain sorts of systems programming, OCaml is wonderful.
For example, we've been very happy with it for implementing Unison (a
pretty serious file synchronizer, including a home-grown RPC
implementation and lots of low-level system call twiddling).  It's also
been used by projects like Ensemble, with good results.  I wouldn't be at
all surprised if you could implement most or all of an industrial
strength filesystem in OCaml.  (The foxnet project at CMU, though, raises
a few caveats -- they had quite a bit of trouble with things like the
need to have multiple views of packet headers.  The Cyclone project [Jim
and Morrisett] is an interesting alternative approach that tries to
address some of these head on.)


Associate Prof., Computer & Information Science        bcpierce@cis.upenn.edu
University of Pennsylvania                                    +1 215 898-2012
200 South 33rd St.                                       Fax: +1 215 898-0587
Philadelphia, PA 19104, USA                http://www.cis.upenn.edu/~bcpierce

Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr