[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package problem, revisted
> Date: Wed, 19 Aug 1992 18:01:10 GMT
> From: Barry Margolin <barmar@Think.COM>
>
> Date: Wed, 19 Aug 1992 11:35 EDT
> From: qobi@unagi.cis.upenn.edu
>
> I used to use symbols to refer to packages until I ran into the aforementioned
> difficulties. Then I switched to using strings. But this too has its problems.
> CommonLisp systems differ as to whether they use upper or lower case for
> package names (much in the same way as the case of symbol print names can
> differ). So I ran into problems trying to make a program portable across
> numerous CommonLisp implementations. That was about three years ago and I
> don't remember the exact details nor which was the offending implementation.
> (I think it was Allegro on NeXT or some derivative of KCL/AKCL/IBCL).
>
> It was almost certainly Allegro CL. It has a number of features that
> allow it to handle default-lowercase and case-sensitive input,
> presumably intended to make porting Franz Lisp programs easier.
Allegro CL has long had a non-standard extension which allows the
reader to be case-sensitive and further to store the symbol-names of
all the initial Common Lisp symbols in lower-case. Normally, the
default is to have this feature turned off so that the reader follows
standard Common Lisp case-insensitive-upper-preferred behavior. For
the NeXT, however, Allegro CL's default reader behavior is
case-sensitive-lower-preferred. The reason for making the NeXT ACL a
special case was that it made the interface to Objective-C a lot
easier to use. The reader behavior, however, can be changed at ACL
install-time or at ACL run-time.
I believe that this default NeXT Allegro CL non-standard reader
behavior was prominently documented, although I don't know how obvious
it might have been to a casual user of NeXT Allegro CL.
Charley
---
Charles A. Cox, Franz Inc. 1995 University Avenue, Suite 275
Internet: cox@franz.com Berkeley, CA 94704
uucp: uunet!franz!cox Phone: (510) 548-3600; FAX: (510) 548-8253
> Note: Our area code became 510 in 1991.