It's not OO but you can roll your own. See: <a href="http://sleep.dashnine.org/manual/functions.html#3" rel="nofollow">http://sleep.dashnine.org/manual/functions.html#3</a><p>It does threading using a fork(&#38;function) abstraction. You can pass an initial set of variables to share but otherwise it's shared nothing. The fork returns an I/O handle which you can use to communicate values back and forth (even serialized objects). You can also wait(fork(&#38;function)) to get a return value when the thread finishes.<p>The Manual, covers the whole language:
<a href="http://sleep.dashnine.org/manual/" rel="nofollow">http://sleep.dashnine.org/manual/</a><p>An article talking about some of the fun things to do with continuations:
<a href="http://today.java.net/pub/a/today/2008/07/24/fun-with-continuations.html" rel="nofollow">http://today.java.net/pub/a/today/2008/07/24/fun-with-contin...</a><p>Blog with Sleep examples:
<a href="http://www.jroller.com/sleepsnip/feed/entries/rss" rel="nofollow">http://www.jroller.com/sleepsnip/feed/entries/rss</a><p>There is also a web app server for it. 
<a href="http://www.hick.org/~raffi/moconti.html" rel="nofollow">http://www.hick.org/~raffi/moconti.html</a>