I've tripped over some more unexpected threading behaviour: It appears that the current port setting is lost, with each new thread. So, for example, if I set the current output port in the first 3 threads created, wait, and create a 4th thread, the current output port is not set in the fourth thread, and etc.
I suspect that this is a bug, not a feature; what's the right way to report this? --linas