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.7 required=5.0 tests=DATE_IN_PAST_06_12 autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id EBE45BB84 for ; Wed, 28 Jan 2009 22:18:28 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AmMCAJNagEnZRrJMgmdsb2JhbABFk0kBAQsLCAcTBbdwhUcG X-IronPort-AV: E=Sophos;i="4.37,339,1231110000"; d="scan'208";a="34412702" Received: from relay2-v.mail.gandi.net ([217.70.178.76]) by mail4-smtp-sop.national.inria.fr with ESMTP; 28 Jan 2009 22:18:28 +0100 Received: from [192.168.0.12] (ras75-4-82-235-58-110.fbx.proxad.net [82.235.58.110]) by relay2-v.mail.gandi.net (Postfix) with ESMTP id 49703135DB; Wed, 28 Jan 2009 22:18:28 +0100 (CET) Subject: Re: [Caml-list] Defining a family of functors From: David Teller Reply-To: David.Teller@mlstate.com To: Nicolas Pouillard Cc: Jacques Carette , caml-list , Andrej Bauer In-Reply-To: <1233102370-sup-9649@ausone.local> References: <497DD1F5.7050702@yahoo.fr> <497DD398.5030501@mcmaster.ca> <7d8707de0901270630mf12c557oc0554a4276b62463@mail.gmail.com> <497F1E8D.2080000@mcmaster.ca> <1233090779.6463.10.camel@Blefuscu> <1233102370-sup-9649@ausone.local> Content-Type: text/plain; charset=utf-8 Organization: MLState Date: Wed, 28 Jan 2009 12:25:26 +0100 Message-Id: <1233141926.6908.4.camel@Blefuscu> Mime-Version: 1.0 X-Mailer: Evolution 2.12.1 Content-Transfer-Encoding: 8bit X-Spam: no; 0.00; functors:01 0100,:01 existential:01 modular:01 existential:01 didier:01 compiler:01 cheers:01 2009:98 wrote:01 wrote:01 abstract:01 encode:01 caml-list:01 alain:01 On Wed, 2009-01-28 at 01:32 +0100, Nicolas Pouillard wrote: > The encoding of modules using existential types in non modular, this > basically means that you have to heavily transform the source. > > What one need to encode modules is "open" existential types, this well > and clearly explained in this POPL'09 paper: > > «Modeling Abstract Types in Modules with Open Existential Types», > by Benoît Montagu and Didier Rémy Yes, I was just reading that paper. However, it is my impression that we could get away without open existential types, at the cost of reduced features. On the other hand, it was pointed to me that Alain already wrote a compiler patch implementing first-class modules. Cheers, David