[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Re: [Re: [Re: (EQUAL "a" "a") -> ()]]]
- To: Guy.Steele at CMU-10A
- Subject: [Re: [Re: [Re: (EQUAL "a" "a") -> ()]]]
- From: Kent M. Pitman <KMP at MIT-MC>
- Date: Wed, 1 Oct 80 19:15:00 GMT
- Cc: BUG-LISP at MIT-MC, miller at MIT-AI
- Original-date: 1 October 1980 15:15-EDT
Date: 1 October 1980 1252-EDT (Wednesday)
From: Guy.Steele at CMU-10A
... I meant for the obarray to be an unadvertised internal implementation
technique. People are only supposed to depend on advertised properties
of data types and functions, and strings being EQ is most certainly
not advertised! ... So if the obarray hack is put in, don't annouce that
an obarray is used. Announbce only that EQUAL now works on strings.
-----
I'm still worried about the naive user from some other lisp who does
assignments to hard-to-print tokens and finds that he breaks other code by
so doing. Making strings interned (anywhere) and then letting them be SETQ-able
bothers me. I'd agree to this only if you could keep SETQ from winning. I
still think (SETQ "(" 'OPEN-PAREN) ... (MAPC #'PRIN1 (LIST "(" A " " ")"))
is going to really cramp debugging... Can someone suggest an out here. Does
purifying pseudo-strings' value cells work and is it feasible? I'm not up on
those details.
-kmp