Subject: Re: named entities that are gc'ed
From: rpw3@rpw3.org (Rob Warnock)
Date: Fri, 28 Mar 2003 05:36:31 -0600
Newsgroups: comp.lang.lisp
Message-ID: <JPCdnajY36kirhmjXTWc-w@speakeasy.net>
Kent M Pitman  <pitman@world.std.com> wrote:
+---------------
| (Remember that in Scheme you only have one package and so all information
| is packaged lexically.  Unlike in CL, you don't have X-WINDOWS:OPEN and
| BOOK:OPEN and CL:OPEN (for files), you instead start with a bare 
| environemnt that maybe has just OPEN (for files) and then you access
| some environment containing X-windows and a hypothetical BOOK module
| and you say "I think in my locale I'll map X-OPEN to X-Windows' OPEN 
| function and BOOK-OPEN to my BOOK package's OPEN function. And, gee,
| I think I'll eliminate the mapping for OPEN, replacing it with a 
| FILE-OPEN mapping, so I don't get myself confused about what the 
| unqualified OPEN is doing.")
+---------------

The PLT Scheme guys addressed a lot of this with their notion of namespaces
<URL:http://download.plt-scheme.org/doc/mzscheme/mzscheme-Z-H-8.html> and
then the whole units/signatures system and the module system which replaced
it <URL:http://download.plt-scheme.org/doc/mzscheme/mzscheme-Z-H-5.html>.
(Think of a DEFPACKAGE that contains almost-top-level definitions of
functions and variables, plus the usual imports & exports stuff.)

But none of that is standardized, of course...


-Rob

-----
Rob Warnock, PP-ASEL-IA		<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607