From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: weis Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id XAA26379 for caml-redistribution@pauillac.inria.fr; Sun, 2 Apr 2000 23:47:42 +0200 (MET DST) Resent-Message-Id: <200004022147.XAA26379@pauillac.inria.fr> 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 WAA01502 for ; Sun, 2 Apr 2000 22:26:46 +0200 (MET DST) Received: from julie.univ-savoie.fr (univax.univ-savoie.fr [193.48.120.32]) by nez-perce.inria.fr (8.8.7/8.8.7) with ESMTP id WAA12264 for ; Sun, 2 Apr 2000 22:26:45 +0200 (MET DST) Received: from univ-savoie.fr (bppp3.univ-savoie.fr [193.48.120.22]) by julie.univ-savoie.fr (8.9.3/jtpda-5.3.3) with ESMTP id WAA89704 ; Sun, 2 Apr 2000 22:26:24 +0200 (CEST) Sender: raffalli@univ-savoie.fr Message-ID: <38E79E8B.100C8F60@univ-savoie.fr> Date: Sun, 02 Apr 2000 21:24:59 +0200 From: Christophe Raffalli Organization: Laboratoire de =?iso-8859-1?Q?Math=E9matiques?=, =?iso-8859-1?Q?Universit=E9?= de Savoie X-Mailer: Mozilla 4.7 [fr] (X11; I; Linux 2.2.14-15mdkfb i686) X-Accept-Language: fr, en MIME-Version: 1.0 CC: skaller@maxtal.com.au, caml-list@inria.fr Subject: Re: Semantic of label: The best (only ?) solution to merge both mode References: <38E320D2.6F67964C@maxtal.com.au> <20000331133429V.garrigue@kurims.kyoto-u.ac.jp> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Resent-From: weis@pauillac.inria.fr Resent-Date: Sun, 2 Apr 2000 23:47:42 +0200 Resent-To: caml-redistribution@pauillac.inria.fr > Now, the commuting label mode is just for those who are ready > to change a bit their habits. > And since it is my personal creation (with others), I will just > refrain from explaining why it is so wonderfully clean theoretically. Ok keep two modes if you want ... Let's only talk about the modern mode ! I wanted to really use commuting labels, I was ready to change my habit, but I found them to restrictive. I find my proposal, which is just to change a bit the semantics of function application (and nothing else) on non-labelled arguments quite nice and useful (no need to always remember all the label names if you prefer to remember the order of the arguments). As my proposal only cost to change about 20 lines why not have an option to the modern mode to let people try it for real and see what they think ? About the "so wonderfully clean theoretically" .. it is not so clear: look at this example: > lama-d134:~> ocaml -modern > Objective Caml version 2.99 (99/12/08) > > # let h f = f x:1 y:2;; > val h : (x:int -> y:int -> 'a) -> 'a = > # let h f = f y:1 x:2;; > val h : (y:int -> x:int -> 'a) -> 'a = > > > The infered type depends on the way you write thing while one could think > they are equivalent (the labels commute in modern mode, don't they ?) I could live with this kind of problem ... but in the current version labels are more painful than useful in modern mode (this is my opinion) ! -- 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