Hello all, I've attached a preliminary implementation of MVars à la Concurrent Haskell for Guile. I made a few small changes to the API to better match Scheme conventions, and added atomicity guarantees for 'read-mvar' and 'swap-mvar'. I also added the interface 'try-read-mvar'. Note that the fairness of this implementation relies upon the fairness of Guile's mutexes and condition variables, which I have not checked. Comments and suggestions welcome. I was thinking that maybe we should add something like this to core Guile. What do you think? Mark