[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Having lots of packages with extensions.
- To: firstname.lastname@example.org, common-lisp@SU-AI.ARPA
- Subject: Having lots of packages with extensions.
- From: Daniel L. Weinreb <DLW@SCRC-QUABBIN.ARPA>
- Date: Wed, 12 Mar 86 13:18 EST
- In-reply-to: The message of 11 Mar 86 12:34-EST from "BACH::GREEK" <email@example.com>
Date: 11 Mar 86 12:34:00 EST
From: "BACH::GREEK" <firstname.lastname@example.org>
feel uncomfortable, however, if we don't at least say that all those
extra packages follow some naming convention, like SYSTEM-xxx.
Otherwise a layered product simply does not know what names it can use
for its packages.
I have traversed this road before. This doesn't work, because there is
no such thing as a "system/user" distinction in a Lisp environment.
There are many levels, and levels built on levels; there's no line
between what is the "system" and what isn't. I've seen what happens
when you introduce such a convention: every user who produces a package
that's part of a substrate names it SYSTEM-XXX, so that "user" packages
can be built on it. This is definitely the problem of conflict of package
names, but after seeing the same thing on many systems in many contexts,
I am convinced that there's no straightforward and satisfactory solution.
Furthermore, if we say that there can be arbitrary packages with
extensions, then what the hell are we bothering to define the SYSTEM
Good question. I think it's a special-case solution to a tiny bit of
the problem of conflicting package names, akin to attacking an elephant
with a BB gun, by making one reserved package name for each CL implementation.
Maybe there's a better reason and I can't reconstruct it.