I am always confused about the snapshot behavior. Yes, it returns true when we are in the new image, but this is far from obvious :/.
How about a more explicit method for snapshotting and continue with different
code
in the new / old image:
self stuffInCurrentImage.
Smalltalk
snapshotIfNew: [ self stuffInNewImage ]
IfCurrent: [ self stuffInCurrentImage ]
self stuffInCurrentAndNewImage.
