From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id UAA11303; Wed, 22 Sep 2004 20:32:09 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 UAA11789 for ; Wed, 22 Sep 2004 20:32:08 +0200 (MET DST) Received: from herd.plethora.net (herd.plethora.net [205.166.146.1]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id i8MIW6BI028318 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Wed, 22 Sep 2004 20:32:07 +0200 Received: from bhurt.plethora.net (bhurt.plethora.net [205.166.146.49]) by herd.plethora.net (8.13.1/8.12.11) with ESMTP id i8MIVuNd001581 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 22 Sep 2004 13:31:59 -0500 (CDT) Date: Wed, 22 Sep 2004 13:42:16 -0500 (CDT) From: Brian Hurt X-X-Sender: bhurt@localhost.localdomain To: "Marcin 'Qrczak' Kowalczyk" cc: caml-list Subject: Re: [Caml-list] Re: OCAML Downcasting? In-Reply-To: <87d60eizlh.fsf@qrnik.zagroda> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Miltered: at concorde with ID 4151C526.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 downcasting:01 marcin:01 'qrczak':01 kowalczyk:01 ignoring:01 ocaml:01 ocaml:01 variants:01 sep:01 polymorphic:01 constructors:01 reasoning:02 modules:02 module:03 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Wed, 22 Sep 2004, Marcin 'Qrczak' Kowalczyk wrote: > It makes a difference because specifying them at the type definition > would introduce a dependency loop between modules. And it would be > unmodular: it would require changing some base module whenever a far > client module is added. > > Apply this reasoning to the exn type. Why don't you define all exn > constructors in one place? Ignoring the fact that exceptions are built into the language, I'd read section 4.2 "Polymorphic Variants" of the Ocaml language manual for how to get around this. -- "Usenet is like a herd of performing elephants with diarrhea -- massive, difficult to redirect, awe-inspiring, entertaining, and a source of mind-boggling amounts of excrement when you least expect it." - Gene Spafford Brian ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners