[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Adjustable and displaced arrays
- To: Rob MacLachlan <RAM@CMU-CS-C.ARPA>, common-lisp@SU-AI.ARPA
- Subject: Adjustable and displaced arrays
- From: David C. Plummer in disguise <DCP@SCRC-QUABBIN.ARPA>
- Date: Thu, 23 May 85 16:37 EDT
- In-reply-to: <RAM.12113193061.BABYL@CMU-CS-C.ARPA>
- References: <RAM.12113193061.BABYL@CMU-CS-C.ARPA>, The message of 23 May 85 09:57-EDT from greek@DEC-HUDSON
For references, the following describes how Lisp Machines do displacing.
If array a is created displaced to array b, then there are two items of
interest in this relationship. (1) Array a is holding onto array b, and
array a has a number stored in it which is the offset into b.
If array b is then adjusted, nothing "physically" happens to array a.
Array a still is still holding onto array b and still has the same
offset within b, independent of what b looked like before and after b
I order for a to be >>meaningfully displaced<< to b, especially when b
has been adjusted, the rules of row major storage must be taken into
account. By the above description, people programming LispMs need to
beware, not the people implementing CL for LispMs.