Christophe Rhodes <csr21@cam.ac.uk> wrote:
+---------------
| Barry Margolin <barmar@alum.mit.edu> writes:
| > Kenny Tilton <ktilton@nyc.rr.com> wrote:
| >> Whassup with ACL? Any rationale for that?
| >
| > It simplifies parsing keywords. Given a token like :FOO, it splits it
| > into the parts before and after the colon, which are "" and "FOO"
| > respectively. Then it does (find-package <part-before>), which expects
| > it to be the name or nickname of a package. Giving the keyword package
| > a nickname of "" means that it doesn't have to be treated as a special
| > case by the parser.
|
| But it also changes the parse of tokens like ||:FOO, which I think
| it's harder to argue that intentional.
+---------------
Note that CMUCL-18e behaves like ACL in this regard:
> (find-package nil)
NIL
> (find-package "")
#<The KEYWORD package, 0/2 internal, 1701/2061 external>
> (package-nicknames *)
("")
> '||:FOO
:FOO
> (symbol-package '||:FOO)
#<The KEYWORD package, 0/2 internal, 1702/2061 external>
>
-Rob
-----
Rob Warnock <rpw3@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607