[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

"lexical" packages

If you recall my four-point message (of Tue, 16 Apr 85 17:20 EST,
replying to Skef), your proposal indeed meets all four points.  It also
solves the editor-scanning problem, since as soon as the editor sees any
normal forms it can stop scanning.  It also solves all those other
problems I mentioned about evaluating those things inside various forms
or functions, since they can no longer appear there.

Only one problem comes to mind, and it's not hard to solve.  Sometimes
you have a system made up of many files that are all in the same
package, and all have the same package environement.  (In fact, almost
all of the software that we work on here is big enough that we handle it
this way.)  It would be inconvenient and error-prone to have to
duplicate the package setup information in each of the files, since it
needs to be modified from time to time.  There needs to be some kind of
indirection feature that lets you have one centralized file holding the
package setup.  The editor would have to read this centralized file when
the original file is read in.

This leads to problems inherent in storing absolute pathnames inside of
files.  On the Lisp Machine, we would store logical pathnames, so that
if the whole group of files were installed at some other site, the
embedded pathname would still work.  This is outside the realm of CLTL
as currently defined, but for us it should suffice.  There may be other
problems with embedded pathnames that aren't coming to mind, however.
I'd like to hear other comments.