From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id OAA09526 for caml-red; Sun, 9 Jul 2000 14:45:44 +0200 (MET DST) 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 BAA01565 for ; Sat, 8 Jul 2000 01:41:55 +0200 (MET DST) Received: from isil.localdomain (adsl-151-201-232-238.bellatlantic.net [151.201.232.238]) by concorde.inria.fr (8.10.0/8.10.0) with ESMTP id e67Nfrn21273 for ; Sat, 8 Jul 2000 01:41:54 +0200 (MET DST) Received: by isil.localdomain (Postfix, from userid 1000) id 816FA37446; Fri, 7 Jul 2000 19:42:02 -0400 (EDT) To: caml-list@inria.fr Subject: Re: Camlp4's (lack of) hygiene (was Re: Macros) References: <8js72h$11h$1@nnrp1.deja.com> <8juuep$420$1@news.planetinternet.be> <8jv92l$qpb$1@bird.wu-wien.ac.at> <87d7kqitmo.fsf_-_@isil.localdomain> From: John Prevost Date: 07 Jul 2000 19:42:02 -0400 In-Reply-To: John Prevost's message of "06 Jul 2000 22:03:43 -0400" Message-ID: <87r995jynp.fsf@isil.localdomain> User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: weis@pauillac.inria.fr Somebody on clf pointed out the other bigger part of hygiene, which is allowing symbols which *are* bound in the "macro" source to be statically bound to that value when used. Unfortunately, I don't think this is a change that's at all simple for camlp4, since it requires very tight coupling with the compiler. Kind of sad, since for some of the most easy useful things you could do (providing little syntaxes for various datastructures via quotations) depend on referring to values from the ernvironment. As an example, the quotations in q_MLast need Pcaml to be opened, or they won't work. I think making changes to allow good gensymming might still be desirable--but I'm sad that this bigger issue can't really be dealt with without a major merge between camlp4 and ocaml itself. A merge which does not seem likely to happen. John.