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.1 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id E5495BBAF for ; Fri, 27 Jun 2008 07:57:45 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAFkeZEjAXQIn/2dsb2JhbACybA X-IronPort-AV: E=Sophos;i="4.27,714,1204498800"; d="scan'208";a="14572721" Received: from concorde.inria.fr ([192.93.2.39]) by mail3-smtp-sop.national.inria.fr with ESMTP; 27 Jun 2008 07:57:18 +0200 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id m5R5vBTh014410 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Fri, 27 Jun 2008 07:57:18 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ak0CAAgeZEjCpx6viGdsb2JhbACSaAEBAQ8gn14 X-IronPort-AV: E=Sophos;i="4.27,714,1204498800"; d="scan'208";a="26767447" Received: from smtpka.univ-orleans.fr (HELO ka.univ-orleans.fr) ([194.167.30.175]) by mail4-smtp-sop.national.inria.fr with ESMTP; 27 Jun 2008 07:57:17 +0200 Received: from smtps.univ-orleans.fr (localhost [127.0.0.1]) by ka.univ-orleans.fr (Postfix) with ESMTP id B3A0012AD46; Fri, 27 Jun 2008 07:57:17 +0200 (CEST) Received: from [192.168.0.1] (lau18-1-82-246-197-195.fbx.proxad.net [82.246.197.195]) by smtps.univ-orleans.fr (Postfix) with ESMTP id 5B43236E60; Fri, 27 Jun 2008 07:57:17 +0200 (CEST) Subject: Re: [Caml-list] Polymorphic variant as a witness? From: David Teller To: Jacques Garrigue Cc: caml-list@inria.fr In-Reply-To: <20080623.192703.27793304.garrigue@math.nagoya-u.ac.jp> References: <1214089919.6190.13.camel@Blefuscu> <20080623.192703.27793304.garrigue@math.nagoya-u.ac.jp> Content-Type: text/plain Date: Fri, 27 Jun 2008 08:00:51 +0200 Message-Id: <1214546451.6510.5.camel@Blefuscu> Mime-Version: 1.0 X-Mailer: Evolution 2.12.1 Content-Transfer-Encoding: 7bit X-Miltered: at concorde with ID 48648137.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; univ-orleans:01 univ-orleans:01 ocamlc:01 cmi:01 mli:01 ocamlc:01 lifo:01 liquidations:98 polymorphic:01 wrote:01 compile:01 typing:01 caml-list:01 variant:02 usable:02 On Mon, 2008-06-23 at 19:27 +0900, Jacques Garrigue wrote: > From: David Teller > * first remark: ocamlc -i works even with non-generalizable types, as > it does not generate any .cmi. Interesting. I'm not sure it's usable in my case, but it's interesting. > * if you want to be still able to compile, you can write a .mli file > not including the witness. ocamlc -i on the .ml will still show you > the witness. Also a good idea. Also possibly unusable in my case, but I'll need to think about it further. > * other solution: put everything inside a function, so that the > type variable is still generalizable after typing the function. In that case, the witness remains invisible, doesn't it? Thanks, David -- David Teller Security of Distributed Systems http://www.univ-orleans.fr/lifo/Members/David.Teller Angry researcher: French Universities need reforms, but the LRU act brings liquidations.