Christophe Rhodes <firstname.lastname@example.org> wrote:
| Barry Margolin <email@example.com> writes:
| > Kenny Tilton <firstname.lastname@example.org> 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)
> (find-package "")
#<The KEYWORD package, 0/2 internal, 1701/2061 external>
> (package-nicknames *)
> (symbol-package '||:FOO)
#<The KEYWORD package, 0/2 internal, 1702/2061 external>
Rob Warnock <email@example.com>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607