From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id NAA22783; Thu, 18 Mar 2004 13:55:00 +0100 (MET) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id NAA24084 for ; Thu, 18 Mar 2004 13:54:59 +0100 (MET) Received: from alex.baretta.com ([213.255.109.130]) by nez-perce.inria.fr (8.12.10/8.12.10) with ESMTP id i2ICtQKW021712 for ; Thu, 18 Mar 2004 13:55:27 +0100 Received: from baretta.com (localhost.localdomain [127.0.0.1]) by alex.baretta.com (8.12.8/8.12.8) with ESMTP id i2ICtKZo003409 for ; Thu, 18 Mar 2004 13:55:21 +0100 Message-ID: <40599C38.3050903@baretta.com> Date: Thu, 18 Mar 2004 13:55:20 +0100 From: Alex Baretta User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 X-Accept-Language: en-us, en MIME-Version: 1.0 To: ocaml Subject: [Caml-list] Re: OCaml's Cathedral & Bazaar References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce by Joe's j-chkmail ("http://j-chkmail.ensmp.fr")! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; baretta:01 baretta:01 ocaml's:01 pons:01 suffisamment:01 implementer:01 foncteurs:01 hashtbl:01 val:01 hashtbl:01 val:01 mymap:01 stateful:01 functor:01 instantiate:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk X-Status: X-Keywords: X-UID: 169 Diego Olivier Fernandez Pons wrote: > > Integer une bibliotheque a une distribution est un choix quasi > irrevocable. Les mesaventures de SML sont suffisamment demonstratives > : les differentes equipes ne sont toujours pas parvenues a se mettre > d'accord et a implementer uniformement une norme qui change tout le > temps alors qu'elle ne prevoit rien de plus que des tableaux, quelques > foncteurs et des entrees sorties basiques. Diego is right. We don't need to integrate all external contributions to the standard library. Yes, a central repository would be cool, and my company, too, would help finance it or staff it. Yet, the Caml team should consider some necessary completions or corrections to the standard library. Here are some points worth considering: * We have functional Maps and imperative Hashtbls; we have imperative Queues but no functional BatchedQueues or the like. I have a BatchedQueue module which I'd be more than glad to contribute to the standard library, but it's really a half hour job anyway. * We have data structure modules with grossly incoherent signatures: (* Hashtbl module *) val add : ('a, 'b) t -> 'a -> 'b -> unit e.g. Hashtbl.add table key value (* Map.S signature *) val add : key -> 'a -> 'a t -> 'a e.g. MyMap.add key value map * Ocaml is a functional programming language but the only regular expression library in the standard distribution (Str) is stateful (hence, non-reentrant) library. A better approach that would guarantee an ample degree of backward compatibility would be to create and Str.Make functor instantiating a copy of all the state variables, so that multithreaded programs could instantiate a copy of Str for every thread. It would be something. Yet a functional regexp library is needed in the standard distribution. I could probably think of a couple more issues if I had time enough. Anyhow, such inconsistencies and deficiencies should be avoided in well-thought standard library for a well thought and well supported "programming tool of choice for the discriminating hacker". In my opinion, it would be reasonable for INRIA to delegate the development of such a replacement standard library to a managed community project (see Mozilla, the Linux kernel, the Fedora project and whatnot). The community could do a lot to support the Ocaml development effort, if only there were some official protocol for cooperation with the official Caml team. *** In consideration of our common belief that all Camlers are created equal and endowed by their License with certain unalienable rights, and that among these are Use, Modification, and the pursuit of Higher abstractions, it is their duty, to throw off such a Standard Library, and to provide new Modules for their future software development. Alex "Hancock" Baretta, with some help from Tom Jefferson ;) ------------------- 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