Lecture 6
Further List Variations (Sections 4.5, 5.4.4)

We continue our discussion from last lecture about variations on list implementation and specification. It is important to note that we can combine all these variations together however we like. Last week we talked about caching/lazy evaluation and back pointers: we treated them separately, but if you wanted the advantages of both, you'd just use them both.