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 QAA24469; Tue, 3 Apr 2001 16:04:42 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id QAA24559 for ; Tue, 3 Apr 2001 16:04:41 +0200 (MET DST) Received: from kurims.kurims.kyoto-u.ac.jp (kurims.kurims.kyoto-u.ac.jp [130.54.16.1]) by concorde.inria.fr (8.11.1/8.10.0) with ESMTP id f33E4df13108 for ; Tue, 3 Apr 2001 16:04:39 +0200 (MET DST) Received: from localhost (isdnppp2.kurims.kyoto-u.ac.jp [130.54.16.103]) by kurims.kurims.kyoto-u.ac.jp (8.9.3/3.7W) with ESMTP id XAA02578; Tue, 3 Apr 2001 23:04:22 +0900 (JST) To: Jean-Christophe.Filliatre@lri.fr, orodeh@cs.huji.ac.il Cc: caml-list@inria.fr Subject: Re: [Caml-list] Future of labels, and ideas for library labelling In-Reply-To: <15049.51482.197252.672850@pc803> References: <20010403105212.A15700@pauillac.inria.fr> <20010403185448J.garrigue@kurims.kyoto-u.ac.jp> <15049.51482.197252.672850@pc803> X-Mailer: Mew version 1.94.2 on Emacs 20.7 / Mule 4.0 (HANANOEN) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20010403230626W.garrigue@kurims.kyoto-u.ac.jp> Date: Tue, 03 Apr 2001 23:06:26 +0900 From: Jacques Garrigue X-Dispatcher: imput version 20000228(IM140) Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Last message before I make a needed pause, since I think lots of people are already discarding this thread anyway. I just repeat here what was my last proposal, since it was in the middle of a mail, and some interested people may have not read it. At least, they don't seem to have read it. (It's only a personal idea.) * make label mode the default mode * keep a nolabel mode similar to current classic mode, but not allowing non-optional labels in function calls * remove all labels from the standard library * introduce a module StdLabels containing labelized versions of List and Array for labellers * add some extra labelized versions of a few functions: Pervasives.output', Pervasives.input', Pervasives.really_input', Array.blit', String.blit' and maybe also String.sub', String.fill', Buffer.add_substring', Hashtbl.add', Map.add'. Remark that this does not change anything for people who didn't use labels before: label mode is a conservative extension of ocaml 2, so you don't even need to use the nolabel mode. From: Jean-Christophe Filliatre > > Jacques Garrigue writes: > > Unfortunately, I see not very much enthusiasm for the classic mode. > > First, let me say that probably most users of the classic mode are not > even aware of what labels are, are not reading this thread or are > reading it but without participating. I was one of the latter (and to > be more precise, we are many in that case in the team where I work). Oh no, I was not underestimating your number; and I was indeed anxious of getting advice from people like you. It was clear enough to me that the answers I was collecting were not very representative. > But you want enthusiasm, I'll give you some. > > I've written dozens of thousands lines of Caml code, and I'm currently > maintaining more than one hundred thousands lines. And I'm perfectly > happy with the classic mode. I recognize that labels may be helpful, > even necessary in some particular situations, but I don't need them > *at all* and I wouldn't like to be forced to switch to a compulsory > label-mode, nor to have to explain to the students the meaning of this > constraint. Thank you for your enthousiasm :-) But by my category you are not an happy user of classic mode (even if you are happy using it): you do not use any of the features of classic mode that would be lost in this change, which are related to using labels, but in a not-so-strict way. Either you are ready to write labels when the writer of the library has put some, and you just use the default mode (no labels in standard libraries anyway). (That is, only if you need to use 3rd party libraries) Either you have strong feelings against labels, and you use the nolabel mode. The only problem is that examples coming with libraries that use labels might need some easy rewriting. If you could express yourself on this point, it would be interesting. I am not at all convinced that this is an ideal solution, but I would like to know what would bother you in it. Best regards, and thanks for ready my long mails Jacques Garrigue ------------------- To unsubscribe, mail caml-list-request@inria.fr. Archives: http://caml.inria.fr