On 11 October 2010 10:53, Lukas Renggli <renggli@gmail.com> wrote:
> (seen includes: anObject)
> ifTrue: [ ^ self ].
> anObject isNil
> ifFalse: [ seen add: anObject ].

That part just tries to avoid to go into recursion if a described
object refers to another object that descriptions refer back to the
original object. That was requested at some point in the past, but I
never dependent on that myself.

I understood that part but don't understand the intent of:

previous := object. object := anObject.
aBlock ensure: [ object := previous ]