Some Implementation Ramifications of Sensory Access in Scheme

A pair and its seepair as proposed, imply that the underlying pointer carry a bit to distinguish which construct is identified. This bit is the read only bit. It is also needed for strings and vectors. I don't know how Scheme systems typically code the dynamic type but it is tempting to put the run time type in the pointer. If the object representation in RAM is large then type information can go there. If a cons cell is a pair of 32 bit words and each word holds a value reference, and some bits are reserved for type, the address portion of the pointer is restricted. It is probably feasible to steal bits at the right end of the address knowing that all values are located at an address which is a multiple of 8. How many pointer codes do we need? It looks like there is room.