From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 78986BCA2 for ; Thu, 18 Aug 2005 23:03:48 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j7IL3m6Y017746 for ; Thu, 18 Aug 2005 23:03:48 +0200 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 XAA10917 for ; Thu, 18 Aug 2005 23:03:45 +0200 (MET DST) Received: from mail.eecs.harvard.edu (bowser.eecs.harvard.edu [140.247.60.24]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j7IL3ijf024707 for ; Thu, 18 Aug 2005 23:03:45 +0200 Received: from localhost (localhost.eecs.harvard.edu [127.0.0.1]) by mail.eecs.harvard.edu (Postfix) with ESMTP id 23C68350C0 for ; Thu, 18 Aug 2005 17:03:44 -0400 (EDT) Received: from mail.eecs.harvard.edu ([127.0.0.1]) by localhost (bowser.eecs.harvard.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 43472-03 for ; Thu, 18 Aug 2005 17:03:43 -0400 (EDT) Received: from labrador.eecs.harvard.edu (labrador.eecs.harvard.edu [140.247.60.247]) by mail.eecs.harvard.edu (Postfix) with ESMTP id E86B13507A for ; Thu, 18 Aug 2005 17:03:43 -0400 (EDT) Received: by labrador.eecs.harvard.edu (Postfix, from userid 32074) id D8E391EB0C3; Thu, 18 Aug 2005 17:03:43 -0400 (EDT) To: caml-list@inria.fr Subject: type abbreviation for open polymorhic variants? Message-Id: <20050818210343.D8E391EB0C3@labrador.eecs.harvard.edu> Date: Thu, 18 Aug 2005 17:03:43 -0400 (EDT) From: nr@eecs.harvard.edu (Norman Ramsey) X-Virus-Scanned: by EECS Amavis at eecs.harvard.edu X-Miltered: at nez-perce with ID 4304F7B4.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 4304F7B0.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; abbreviation:01 variants:01 abbreviation:01 func:01 polymorphism:01 func:01 compiler:01 syntax:01 define:01 eecs:01 underlying:01 string:03 string:03 suggestion:03 expressions: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.0 required=5.0 tests=none autolearn=disabled version=3.0.3 I wish to define an abbreviation for the following type: [> `Nil | `Number of float | `String of string | `Function of func | `Table of table ] I am assuming that the underlying machinery involves something like row polymorphism, but I don't know how to name the 'row variable'. I tried type 'a t = ['a | `Nil | `Number of float | `String of string | `Function of func | `Table of table ] but this suggestion was roundly rejected by the compiler. Does anybody know how to do this? I couldn't find anything in the syntax for polymorphic-variant type expressions. Norman