[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: REMF-DESTRUCTION-UNSPECIFIED (Version 4)
- To: KMP@STONY-BROOK.SCRC.Symbolics.COM
- Subject: Issue: REMF-DESTRUCTION-UNSPECIFIED (Version 4)
- From: Jon L White <jonl@lucid.com>
- Date: Sat, 3 Dec 88 01:46:15 PST
- Cc: CL-Cleanup@SAIL.Stanford.EDU
- In-reply-to: Kent M Pitman's message of Thu, 1 Dec 88 02:17 EST <881201021710.9.KMP@BOBOLINK.SCRC.Symbolics.COM>
re: I'm not really psyched about it saying anywhere that it's "perfectly
all right". It's "all right under some special circumstances", which
may have the same legal weight. But I'd like to at least have some
verbiage in there that says that the intent is that copying would
occur only if it's really true that copying is more efficient. The
I think you've missed the main thrust of my comments. It is *not*
efficiency considerations at all that prevents Lucid's implementations
from modifying, or otherwise "adjusting" a non-adjustable array. Since
the whole point of this proposal was to "bend the rules" for update
specifications, to accommodate Symbolics peculiar notions of efficiency,
then I hope you can still take into consideration the requirements for
correctness in those implementations that take CLtL p.297 literally:
"It is not permitted to call ADJUST-ARRAY on an array that
was not created with the :ADJUSTABLE option."
re: I don't propose putting all of the above in the proposal. I just
wanted to make my opinion clear. I propose changing the proposal by...
- striking the three or so places that it explicitly reminds you
to use SETQ in case a side-effect doesn't occur
This is a typo, isn't it? the most elementary error is to forget to
put the SETQ on a DELETE.
Incidentaly, I would like to question the validity of "bending the rules"
on NCONC and NBUTLAST (and possibly on NSUBST). Whereas it seems less
useful to maintain the actual list substructure in (SETF (GETF ...) ...),
DELETE, NREVERSE, NSUBSTITUTE, etc, I can see a very useful role for the
specific semantics of these few -- that they change the cdr of a particular
cons cell -- and would question very highly the value of striving for speed
at the cost of correct semantics.
NSUBLIS seems to be missing; but I would classify it in with NSUBST,
NCONC and NBUTLAST of the previous paragraph.
-- JonL --
P.S. Comments from alleged Lucid users are very useful unless a version
number is attached, and some reasonably specific description of the
problem is stated. Did the user try to SORT a simple array? or was
it a List? was he in an EGC lisp, or not? and so on.