Exercise 10.3-3

Why don’t we need to set or reset the prev attributes of objects in the implementation of the ALLOCATE-OBJECT and FREE-OBJECT procedures?

We can safely leave any relevant prev attributes alone during these procedures because we know these values won’t ever be used. When freeing an object we use the next attribute to maintain the stack-like properties of \(free\) and when allocating an object we simply return the node ready to accept real values. Therefore both of these procedures behave the same whether or not any prev values are present.