caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] proposal for library
@ 2002-07-08 10:42 Diego Olivier Fernandez Pons
  0 siblings, 0 replies; 3+ messages in thread
From: Diego Olivier Fernandez Pons @ 2002-07-08 10:42 UTC (permalink / raw)
  To: caml-list; +Cc: warplayer

Nicolas Carnasse a écrit :

> I also think it would be nice to have one big polymorphic data-
> structures library ( a la C++ Standard Template Library ) including 
> both mutable and non-mutable structures and most of the common
> algorithms - and perhaps some "misc" functions for strings and
> others...

Chris Okasaki avait annoncé il y a plusieurs années déjà une version
ML de sa librairie Edison actuellement seulement disponible en version
Haskell.
Ne voyant toujours pas la version ML venir, j'ai d'abord porté
quelques modules dont j'avais besoin, puis une partie de la libraire
(essentiellement les séquences).
J'avais en tête de poursuivre ce portage pendant les vacances.

Je dois cependant vous avertir sur un certain nombre de points :

- la création d'une librairie de structures de données n'est pas aussi
simple que cela pourrait en avoir l'air. J'en tiens pour preuve les
nombreuses discussions qui ont déjà eu lieu sur cette liste.

- la structure de la librairie Edison est un choix parmi d'autres
(tout comme la STL que vous prenez en exemple) est n'est pas
nécessairement le meilleur. Richard A. O'Keefe a dit avec raison dans
une discussion sur l'éventuel portage d'Edison vers Mercury « In
short, while we should certainly learn from Okasaki, we should not
imitate him slavishly ». 

- Ce qui vaut pour Edison vaut tout autant pour la STL. Je vous
renvoie à un article de Peyton Jones (Bulk types with class)

En somme votre affirmation « Once it'll be complete and safe, I don't
think there will be any problem for putting it into the official
distribution » n'est pas si évidente et un très important travail de
réflexion, discussion et concertation doit être fait au préalable.
Cela est d'autant plus vrai en Caml que ce dernier propose de nombreux
paradigmes de programmation (fonctionnelle, impérative, objets)

De surcroit, il faudrait y intégrer les nombreuses structures de
données déjà réalisées indépendamment par d'autres (patricia trees,
pomap, Splay trees, ...)

Pour ne pas finir sur une note négative, je signale quand même que la
présence d'une telle librairie, même si elle ne fait pas l'unanimité
serait interessante d'un point de vue pédagogique :

- implémentation fonctionnelle de structures de données (dans la
lignée du portage fait par Mottle des exemples du livre d'Okasaki)
- exemples élémentaires de programmation par objets (qui font parfois
défaut, comme l'ont prouvé certaines discussions sur cette liste, sur
la liste des débutants ou sur la liste ML)
- exemples de mélange fonctionnel / impératif

et surtout possibilité de comparer les différents paradigmes (puisque
les fonctionnalités offertes sont toujours les mêmes). C'est
d'ailleurs dans cette optique là que j'avais commencé le portage
d'Edison.

        Diego Olivier

 
______________________________________________________________________________
ifrance.com, l'email gratuit le plus complet de l'Internet !
vos emails depuis un navigateur, en POP3, sur Minitel, sur le WAP...
http://www.ifrance.com/_reloc/email.emailif


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Caml-list] proposal for library
  2002-06-21 16:16         ` [Caml-list] proposal for library Christophe Raffalli
@ 2002-06-22 11:56           ` Nicolas Cannasse
  0 siblings, 0 replies; 3+ messages in thread
From: Nicolas Cannasse @ 2002-06-22 11:56 UTC (permalink / raw)
  To: Christophe Raffalli, caml-list

> I think this is interesting, because we often write some small library
> of function that could be useful to every body ... so it is a nice way
> to share them.
>
> among the useful missing library that I am sure many people have
> allready written, there are: library for multiset (using Map or
> something better), partial order, etc ...
>
> Morever, people could also submit optimized replacement for existing
> libraries (using a compatible interface ans semantics, this is hard to
> check for the referre). So this way we could get nice, complete and
> efficient libraries for OCaml !

I also think it would be nice to have one big polymorphic data-structures
library ( a la C++ Standard Template Library ) including both mutable and
non-mutable structures and most of the common algorithms - and perhaps some
"misc" functions for strings and others.... If some people are interested by
opening a SourceForge ( or other CVS ) account to enable such development,
that will enable the whole community to design and write such a library.

Once it'll be complete and safe, I don't think there will be any problem for
putting it into the official distribution.

Nicolas Cannasse

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Caml-list] proposal for library
  2002-06-20 14:42       ` YAMAGATA yoriyuki
@ 2002-06-21 16:16         ` Christophe Raffalli
  2002-06-22 11:56           ` Nicolas Cannasse
  0 siblings, 1 reply; 3+ messages in thread
From: Christophe Raffalli @ 2002-06-21 16:16 UTC (permalink / raw)
  To: caml-list

Le jeu 20/06/2002 à 16:42, YAMAGATA yoriyuki a écrit :
> From: Markus Mottl <markus@oefai.at>
> Subject: Re: [Caml-list] Unix.file_descr -> int ???
> Date: Thu, 20 Jun 2002 13:52:37 +0200
> 
> > It might be a good idea to define some set of rules that allows people
> > external to INRIA to write libraries in such a way that they could be
> > accepted in the standard distribution.
> 
> and some degree of disclosure of the future development plan, or at
> least, what INRIA team is working now, would help.  This would reduce
> danger of duplicated works.

Why not have a system of submission/referee for adding functions to
existing library (I am often mising for instance the usual List.flat_map
or List.rev_append in list.mli) or adding new library to the standard
OCaml ? 

There should exist some clearly written rules to respect, and the
referees should check that these rules are respected. The referees could
also ask for modification and so on ..

I do not think the INRIA team spend a lot of time adapting the libraries
when they do incompatible change to OCaml. And moreover, some libraries
could be maintained outside of INRIA (by the guy who created the
library) ?

I think this is interesting, because we often write some small library
of function that could be useful to every body ... so it is a nice way
to share them.

among the useful missing library that I am sure many people have
allready written, there are: library for multiset (using Map or
something better), partial order, etc ...

Morever, people could also submit optimized replacement for existing
libraries (using a compatible interface ans semantics, this is hard to
check for the referre). So this way we could get nice, complete and
efficient libraries for OCaml !

-- 
Christophe Raffalli
Université de Savoie
Batiment Le Chablais, bureau 21
73376 Le Bourget-du-Lac Cedex

tél: (33) 4 79 75 81 03
fax: (33) 4 79 75 87 42
mail: Christophe.Raffalli@univ-savoie.fr
www: http://www.lama.univ-savoie.fr/~RAFFALLI
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-07-08 10:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-08 10:42 [Caml-list] proposal for library Diego Olivier Fernandez Pons
  -- strict thread matches above, loose matches on Subject: below --
2002-06-18 22:41 [Caml-list] Unix.file_descr -> int ??? Alessandro Baretta
2002-06-20 11:23 ` Xavier Leroy
2002-06-20 11:52   ` Markus Mottl
2002-06-20 13:14     ` Alessandro Baretta
2002-06-20 14:42       ` YAMAGATA yoriyuki
2002-06-21 16:16         ` [Caml-list] proposal for library Christophe Raffalli
2002-06-22 11:56           ` Nicolas Cannasse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).