[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Loading into the current package.
From: "BACH::GREEK" <firstname.lastname@example.org>
There is something wrong with a file that doesn't mention packages.
This is just the rim of the compilation environment wormcan.
I think this is the key point. I wouldn't dream of
creating a Lisp file without that -*- line at the top.
Even my programs which write Lisp files put it on there.
But I'd like to take a bite out of your wormcan. I think
we're being silly, scaring ourselves with "compilation
environments are a hard issue." The Europeans are tackling
it, if I understand my mail rightly, and if we just address
the specific problems, rather than throwing up our hands, I
believe we can make forward progress.
Surely we can come up with some standard syntax for
specifying this information, in a way that isn't completely
broken for systems with editors. I see three approaches:
1) restrict IN-PACKAGE, IMPORT, and friends to be at the start
of the file, before any other forms.
2) combine this stuff into a single declarative form at the top
of the file. (declarative = non-evaluating).
3) -*- or similar syntax.
We could also argue forever, or we could ignore the problem.
But that doesn't make IN-PACKAGE any less of a useless crock
that fails to live up to its compatibility goals. Unless there
is a language-specification change, "portable" CL files will
only be portable in a very narrow sense, and the reader of the
Steele Grey Book won't even know there's an issue.