Scala 2.8有一项非常重大的进步,那就是支持了continuation(http://en.wikipedia.org/wiki/Continuation)。这玩意儿不知道怎么翻译成中文,叫“连续”吗?怪难听的。不过不管叫什么,它都是一个相当令人着迷的语言特性。
我最早是在Scheme那儿通过一个叫Call-with-current-continuation(简写成call/cc,http://en.wikipedia.org/wiki/Call-with-current-continuation)的神奇函数认识它的。我曾经以为和coroutine差不多,最近因为关注continuation-based web framework才算有点明白,这是多么肤浅的认识啊!最著名的continuation-based web开发框架当属用Smalltalk实现的Seaside(