Browser is baaaaaaad
DanI at wdi.disney.com
Tue Jun 23 21:45:21 UTC 1998
>...browser consistency problem...
>I don't know how to fix this.
This problem dates back to the release of Smalltalk-80. There are several ways to fix it, but none are exactly simple. We (Ted K mainly) had a pretty complete solution for this before 2.0, but we decided to wait until the Pluggable and Morphic conversions were in place so it would work for both worlds.
The most common problem is that you can be looking at a piece of code that is out of date and not know it. Your problem is less common, but can be somewhat nastier as you discovered. I believe your problem could be fixed fairly easily if the browser keeps its own copy of the System organization. Then adding or removing classes in another browser would not invalidate the browser list indices.
The full solution that we have in mind is...
1. Keep a pointer to the method being browsed. If that ever differs from a re-retrieval, then the method got changed in some other browser. We would check this whenever you enter the window, and re-browse if it changes (with the usual dialog about any edits in progress).
2. At the same time, we would also check consistency of system and class organizations, and re-browse (thus recreating the lists) if these change.
If you are patient, I'm sure we'll fix this, but I'm equally sure that it won't happen within the month.
More information about the Squeak-dev