[ENH] ContextCleanup-ajh ( [cd][er][et][su] extremely useful; unclear about ContextTag )

Andreas Raab andreas.raab at gmx.de
Thu Jun 26 17:03:39 UTC 2003


The context cleanup work is a somewhat larger project so it deserves a few specific comments. Anthony's work provides a number of very valuable additions and fixes a number of problems which should have been fixed long ago. In particular, some of the refactoring of the exceptions (for example, introducing UnhandledError) seem extremely valuable in order for clients to deal with various exceptions in a more flexible way.

The changes work well (I've been running them for a while now) and no ill side effects have been found sofar. However, it needs to be understood that there is a chance that some clients will break as a result of the changes done, yet fixing them seems trivial enough to go ahead with the changes. The current change set also includes a number of fixes to classes which are not present in 3.6alpha - these should be removed and sent to the appropriate maintainers.

About the only change that isn't completely obvious to me is the introduction of ContextTag for identifying references to contexts. Using a context's receiverMap instance variable 'because it's unused' looks like a hack (why not use a registry? if they are only needed for continuations it seems that the speed implications of storing it internally vs. in a registry should be irrelevant) and it is unclear where exactly the advantage of using ContextTag is. While test cases are provided they do not illustrate any of the advantages of using context tags.

However, as I am not a big user of continuations, I can certainly be convinced by any number of 'good arguments' for using context tags (as well as storing them in the receiverMap).

Except from this particular aspect I wholeheartedly endorse the work done here and vote strongly for an inclusion into Squeak, once the above two issues have been resolved one way or another.

  - Andreas













< I'm a bug-fixing machine! >

This post brought to you by the BugFixArchiveViewer, a handy tool that makes it easy to comment on proposed fixes and enhancements for Squeak.  For more information, check out the Web page for the BugFixArchiveViewer project: http://minnow.cc.gatech.edu/squeak/3214 

< I'm a bug-fixing machine! >



More information about the Squeak-dev mailing list