Newsgroups: comp.lang.dylan
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!uunet!world!goodwin
From: goodwin@world.std.com (Jim W Goodwin)
Subject: Hygenic macros
Message-ID: <CxqtGA.8un@world.std.com>
Organization: The World Public Access UNIX, Brookline, MA
X-Newsreader: TIN [version 1.2 PL2]
Date: Sun, 16 Oct 1994 01:57:46 GMT
Lines: 14

OK, given the consensus that "hygenic" means "avoids the
traditional problem of unintended variable capture",
can someone tell us what the preferred approach or approaches
are to designing hygenic macros is among the Dylan implementors,
and what their main tradeoffs are? 

Offhand I would guess that The Right Thing requires hacking the
compiler's scope-tracking mechanism. On the other hand, I would
try pretty hard to find a way to impose acceptable restrictions on
the form of macros (e.g. substitution permitted only expression-
to-expression) that would enable a preprocessing, macro-expansion
time solution.

Jim Goodwin
