atomically releasing a lock and waiting on a condition variable

Taylor R Campbell <[email protected]> Thu, 3 Dec 2009 16:30:18 -0500
Newsgroups gmane.lisp.scheme.scheme48
Message-ID <[email protected]>
Some months ago on this mailing list, I claimed that it was impossible
using Scheme48's optimistic concurrency and thread system to implement
an atomic operation that releases a lock and waits on a condition
variable, or something to that effect.  Shortly after I made the
claim, I proved myself wrong by implementing such an operation, and
wrote an implementation of a good chunk of the part of SRFI 18 about
mutices and condition variables, but subsequently forgot about that
code and never turned it into a complete implementation of SRFI 18, as
I lack a need for such a beast.  For entertainment purposes only, I
have put the code up at

<http://mumble.net/~campbell/darcs/s48-srfi-18/>.