I wish we had either (ideally both) in the JVM. I frequently come across situations with clojure where using a coroutine or continuation would be the cleanest solution. There are various libraries that use some kind of bytecode instrumentation to achieve it, but this places serious constraints on where and how you can use them. Really, this needs to be a VM feature.<p>I wonder if it's possible to apply the same hack as this one for .NET:<p><a href="http://msdn.microsoft.com/en-us/magazine/cc164086.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/magazine/cc164086.aspx</a><p>Basically, use the low-level, OS (C) fiber/coroutine facility and attach the fiber as a thread.