From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 376AFBB83 for ; Mon, 3 Jul 2006 19:30:44 +0200 (CEST) Received: from mail3.sea5.speakeasy.net (mail3.sea5.speakeasy.net [69.17.117.5]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id k63HUh2F028071 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Mon, 3 Jul 2006 19:30:44 +0200 Received: (qmail 22574 invoked from network); 3 Jul 2006 17:30:38 -0000 Received: from shell2.sea5.speakeasy.net ([69.17.116.3]) (envelope-sender ) by mail3.sea5.speakeasy.net (qmail-ldap-1.03) with AES256-SHA encrypted SMTP for ; 3 Jul 2006 17:30:38 -0000 Date: Mon, 3 Jul 2006 10:30:38 -0700 (PDT) From: brogoff To: caml-list@yquem.inria.fr Subject: Petty complaint (Was Re: [Caml-list] Type from local module would escape its )scope? In-Reply-To: <20060703155131.7031cffa@is003364.intra.cea.fr> Message-ID: References: <069A1F65-E50C-4363-9CCA-C6CC9A453D09@vub.ac.be> <20060703155131.7031cffa@is003364.intra.cea.fr> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Miltered: at concorde with ID 44A95443.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; iirc:01 forall:01 ocaml:01 encodings:01 polymorphism:01 wrote:01 caml-list:01 typing:01 functions:01 speakeasy:01 functional:02 types:02 scope:03 module:03 unit:03 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=SPF_SOFTFAIL autolearn=disabled version=3.0.3 On Mon, 3 Jul 2006, Virgile Prevosto wrote: > IIRC arguments can not have a generalized type of the form > "forall 'a, 'a -> unit", but methods and record fields support such > types: for instance, you can have: It makes me wonder, if OCaml is to be a functional language, why functions are second class citizens of the language with regards to typing? By various encodings you can get this higher rank polymorphism, it's been there for years, but we can't write the function directly. Is it because we'd have to write it's type? -- Brian