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.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id C2B99BBC1 for ; Mon, 28 Apr 2008 08:50:21 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAP4PFUjAXQIm/2dsb2JhbACpPQ X-IronPort-AV: E=Sophos;i="4.25,715,1199660400"; d="scan'208";a="11549283" Received: from discorde.inria.fr ([192.93.2.38]) by mail1-smtp-roc.national.inria.fr with ESMTP; 28 Apr 2008 08:50:21 +0200 Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id m3S6oGJx026369 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Mon, 28 Apr 2008 08:50:21 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAP4PFUjVujhf/2dsb2JhbACpPQ X-IronPort-AV: E=Sophos;i="4.25,715,1199660400"; d="scan'208";a="12018178" Received: from witko.kerneis.info ([213.186.56.95]) by mail3-smtp-sop.national.inria.fr with ESMTP; 28 Apr 2008 08:50:21 +0200 Received: from hokahe.kerneis.info ([82.224.215.18] helo=tatanka.kerneis.info) by witko.kerneis.info with esmtpsa (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1JqNBs-0002wM-DF; Mon, 28 Apr 2008 08:50:20 +0200 Received: from gabriel by tatanka.kerneis.info with local (Exim 4.69) (envelope-from ) id 1JqNBr-0004dD-Fg; Mon, 28 Apr 2008 08:50:19 +0200 Date: Mon, 28 Apr 2008 08:50:19 +0200 From: Gabriel Kerneis To: Jacques Le Normand Cc: caml-list@inria.fr Subject: Re: [Caml-list] Generalized algebraic datatypes Message-ID: <20080428065019.GA17693@kerneis.info> Mail-Followup-To: Jacques Le Normand , caml-list@inria.fr References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.17+20080114 (2008-01-14) X-SA-Exim-Connect-IP: 82.224.215.18 X-SA-Exim-Mail-From: gabriel@kerneis.info X-SA-Exim-Scanned: No (on witko.kerneis.info); SAEximRunCond expanded to false X-Miltered: at discorde with ID 481573A8.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; datatypes:01 ocaml:01 datatypes:01 compiler:01 ocaml's:01 28,:98 wrote:01 compilers:01 caml-list:01 caml:02 black:96 algebraic:03 algebraic:03 jacques:03 generalized:04 On Mon, Apr 28, 2008 at 01:35:06AM -0400, Jacques Le Normand wrote: > Does ocaml support Generalized Algebraic datatypes? No. > If not, are there any caml based compilers that support it? Some pieces of software (e.g. Ocsigen), which need GADT, use (very carefuly crafted) "black magic" (Obj.magic) to get things compiled. You could probably do this in your "toy compiler", put you will loose the benefit of Ocaml's type-checking. Regards, -- Gabriel Kerneis