ФЭНДОМ


Продолжения (Continuations) -- понятие из теории алгоритмов. Продолжение является полноценным объектом (first-class object) и воплощает будущее выполнение программы. Это будущее выполнение можно возобновить, причем неоднократно.

Любую программу можно преобразовать к такому виду, когда передача управления происходит только через возобновление ранее запомненных продолжений. Это называется Continuation Passing Style и используется в разработке оптимизирущих компиляторов.

В Smalltalk продолжения легко реализуются благодаря тому, что стек, контексты и замыкания являются полноценными объектами и ими можно свободно манипулировать. Для сравнения: в большинство языков, поддерживающих продолжения, их реализация является частью среды выполнения и представляет собой черный ящик.

В контексте Smalltalk продолжения интересны прежде всего как основа гибкости Seaside