From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: weis Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id XAA03276 for caml-redistribution@pauillac.inria.fr; Wed, 2 Feb 2000 23:08:44 +0100 (MET) Resent-Message-Id: <200002022208.XAA03276@pauillac.inria.fr> Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id UAA11717 for ; Wed, 2 Feb 2000 20:20:31 +0100 (MET) Received: from batman.labri.u-bordeaux.fr (batman.labri.u-bordeaux.fr [147.210.8.5]) by nez-perce.inria.fr (8.8.7/8.8.7) with ESMTP id UAA15634 for ; Wed, 2 Feb 2000 20:20:30 +0100 (MET) Received: from serveur3-1.labri.u-bordeaux.fr (vanicat@serveur3-1 [147.210.8.180]) by batman.labri.u-bordeaux.fr (8.8.7/8.8.7) with ESMTP id UAA20762 for ; Wed, 2 Feb 2000 20:21:27 +0100 (MET) Received: (from vanicat@localhost) by serveur3-1.labri.u-bordeaux.fr (8.9.3/8.8.8/Debian/GNU) id UAA08674; Wed, 2 Feb 2000 20:20:28 +0100 X-Authentication-Warning: serveur3-1.labri.u-bordeaux.fr: vanicat set sender to vanicat@labri.u-bordeaux.fr using -f Sender: Remi.Vanicat@labri.u-bordeaux.fr To: caml-list@inria.fr Subject: Re: Module naming References: <38978ABF.7898BDB6@in.ot.com.au> From: Remi VANICAT In-Reply-To: Max Skaller's message of "Wed, 02 Feb 2000 12:39:11 +1100" Date: 02 Feb 2000 20:20:28 +0100 Message-ID: User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.3 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Resent-From: weis@pauillac.inria.fr Resent-Date: Wed, 2 Feb 2000 23:08:44 +0100 Resent-To: caml-redistribution@pauillac.inria.fr Max Skaller writes: > I'm confused: why doesn't this work? [I get unbound type ctor message] > [shortened version] > > module type X = sig type one end > module type Y = sig type two end > module type XY = sig module type XX = X module type YY = Y end > module type Client = functor (T: XY) -> > sig val f: T.XX.one -> unit end > ^^^^^^^^ i am not sure of what you want, but this work : module type X = sig type one end module type Y = sig type two end module type XY = sig module XX : X module YY : Y end module type Client = functor (T: XY) -> sig val f: T.XX.one -> unit end you have define XY as the type of module that contain two module type equal to X and to Y; i have define XY as the type of module that contain two module of type X and Y; (sorry for my poor English) version française : Max Skaller a défini XY comme le type des modules contenant deux type de module XX et YY égale =E0 respectivement X et Y, je pense qu'il voulait définir XY comme le type des modules contenant deux module XX et YY de type respectif X et Y. -- Rémi Vanicat vanicat@labri.u-bordeaux.fr http://dept-info.labri.u-bordeaux.fr/~vanicat