From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.4 required=5.0 tests=AWL,NO_REAL_NAME autolearn=disabled version=3.1.3 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id 27C84BC69 for ; Fri, 16 Nov 2007 15:17:08 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ao8CAKg1PUeGYPwh/2dsb2JhbACOGIJC X-IronPort-AV: E=Sophos;i="4.21,426,1188770400"; d="scan'208";a="4330186" Received: from uni-sb.de ([134.96.252.33]) by mail2-smtp-roc.national.inria.fr with ESMTP; 16 Nov 2007 15:17:08 +0100 Received: from mail.cs.uni-sb.de (mail.cs.uni-sb.de [134.96.254.200]) by uni-sb.de (8.14.2/2007110200) with ESMTP id lAGEH7F9011394 for ; Fri, 16 Nov 2007 15:17:07 +0100 (CET) Received: from mail.ps.uni-sb.de (james.ps.uni-sb.de [134.96.186.68]) by mail.cs.uni-sb.de (8.14.2/2007110200) with ESMTP id lAGEH7is001268 for ; Fri, 16 Nov 2007 15:17:07 +0100 (CET) Received: from localhost ([127.0.0.1] helo=www.ps.uni-sb.de ident=www-data) by mail.ps.uni-sb.de with esmtp (Exim 4.63) (envelope-from ) id 1It20J-0002Ul-1N for caml-list@yquem.inria.fr; Fri, 16 Nov 2007 15:17:07 +0100 Received: from 76.223.24.253 (SquirrelMail authenticated user rossberg) by www.ps.uni-sb.de with HTTP; Fri, 16 Nov 2007 15:17:07 +0100 (CET) Message-ID: <2702.76.223.24.253.1195222627.squirrel@www.ps.uni-sb.de> In-Reply-To: <473D61A3.9090708@frisch.fr> References: <473A363F.2080301@gmail.com> <891bd3390711131608g48b584a4n6b0ccab95d7de3f3@mail.gmail.com> <20071114075827.GA24058@yquem.inria.fr> <473AEC04.3030303@frisch.fr> <20071114143524.GA4423@yquem.inria.fr> <473B249D.9040703@frisch.fr> <20071114184352.GB28796@yquem.inria.fr> <473BE750.9060301@frisch.fr> <20071115132649.GB15754@yquem.inria.fr> <891bd3390711151630x238b8eddod5b7462d0fa1c735@mail.gmail.com> <473D61A3.9090708@frisch.fr> Date: Fri, 16 Nov 2007 15:17:07 +0100 (CET) Subject: Re: [Caml-list] Compiler feature - useful or not? From: rossberg@ps.uni-sb.de To: "caml-list" User-Agent: SquirrelMail/1.4.9a MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: rossberg@ps.uni-sb.de X-SA-Exim-Scanned: No (on mail.ps.uni-sb.de); SAEximRunCond expanded to false X-Spam: no; 0.00; compiler:01 rossberg:01 frisch:01 frisch:01 subtyping:01 abbreviation:01 bounded:01 abstraction:01 ocaml's:01 subtyping:01 coercions:01 subsumed:01 andreas:01 caml-list:01 int:01 "Alain Frisch" : > > But the really interesting thing is that the new feature opens the door > to extending the subtyping operator :> to take into account the natural > (identity) injection from a private abbreviation to the underlying type. Indeed. The first thing I was wondering when reading Pierre's description was how that makes type t = private int any different from a bounded abstraction type t <: int With OCaml's explicit subtyping coercions, the former seems to be subsumed by the latter. - Andreas