From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 162A1BD15 for ; Tue, 21 Feb 2006 10:05:36 +0100 (CET) Received: from smtp06.web.de (smtp06.web.de [217.72.192.224]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k1L95ZaQ001794 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 21 Feb 2006 10:05:35 +0100 Received: from [84.165.149.124] (helo=wiko) by smtp06.web.de with smtp (WEB.DE 4.105 #340) id 1FBTRv-00045F-00; Tue, 21 Feb 2006 10:04:47 +0100 Message-ID: <005f01c636c6$4300aca0$15b2a8c0@wiko> From: "Andreas Rossberg" To: , References: <43FA64C8.1050704@cs.utah.edu> Subject: Re: [Caml-list] Rephrasing of dynamic module selection problem Date: Tue, 21 Feb 2006 10:07:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1506 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506 Sender: AndreasRossberg@web.de X-Sender: AndreasRossberg@web.de X-Miltered: at nez-perce with ID 43FAD7DF.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; rossberg:01 caml-list:01 mls:01 ocaml:01 inference:01 higher-order:01 undecidable:01 wrote:01 andreas:01 andreas:01 speakeasy:01 modules:01 modules:01 checking:02 module:03 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 "brogoff" wrote: > > There are other MLs where you can pack a module into some manipulable > entity, but OCaml isn't one of them. Once you go there I wonder why not > just remove all differences between modules and records, since the two > things seem very similar. Simple answer: type inference. You can do it for records, but not for modules, because their type system is much too higher-order. In fact, even type /checking/ may easily become undecidable. These probably aren't unsurmountable problems, but unfortunately unsolved yet. - Andreas