From: Matthew Flatt <mflatt@cs.utah.edu> To: plt-scheme@list.cs.brown.edu Date: Thu, 10 Apr 2003 14:44:22 -0600 Subject: [plt-scheme] 203.7 The exp-tagged code in CVS for MzScheme and Mred is now version 203.7. This version mainly cleans up some details in the concurrency primitives: * `thread-resume’ now installs a transitive resume. That is, `(thread-resume t1 t2)’ not only resumes t1 and potentially changes t1’s custodian, it also arranges for each future resume of t2 to also resume t1. * Semaphore blocking is now "fair" in the usual sense: If a thread waits on a semaphore that is unblocked arbitrarily often, then the thread is eventually unblocked (no matter how many other threads also wait on the same semaphore). * `object-wait-multiple’ now fairly selects among alternatives using psuedo-random numbers. The pseudo-random generator is specified through a new `current-wait-pseudo-random-generator’ parameter. As a result, all else being equal, `object-wait-multiple’ can be made deterministic by picking a seed for the generator. * Fixed event-handling problems in Windows. For example, under XP, mousing over the task bar now hilites task buttons, and non-roman input methods don’t become temporarily wedged when used in DrScheme/MrEd. [This change was actually exp-tagged a few days ago.] * Fixed a crashing problem under OS X when using scroll bars. [This change was actually exp-tagged over a week ago.] * Added `tcp-port?’. Matthew