A bit of a pie in the sky idea, but.... I am currently tracing through code like this... XMLDOMVisitor >> visitDocument: theDocument theDocument nodes do: [ :each | each accept: self ] and its hard to get a feel for where "each" is in theDocument. I wonder if it would even be possible for the debugger to have a tab that showed a list of "theDocument nodes" with a cursor positioned at "each" ? Maybe the #do: iterator is automatically identified, or maybe you'd need a pragma to define the tab, specifying the list contents and which variable is the cursor. When the program crashes on an item, you could selected an item a few earlier and choose to break on that data value. So I guess all of it would be tough, but anyway thought I'd share that flash of an idea. cheers -ben