Implementation Strategies for First-Class Continuations

Implementation Strategies for First-Class Continuations
复制标题

一流延续的实施策略

DOI:
--
复制
发表时间:
1999
期刊:
High. Order Symb. Comput.
影响因子:
--
通讯作者:
Eric Ost
Eric Ost
中科院分区:
--
文献类型:
--
作者:
William D. Clinger;Anne Hartheimer;Eric Ost

文献摘要

被引文献

相似文献

方案和SmallTalk的延续可能会有无限的范围。这意味着,对于大多数语言来说,纯粹基于堆栈的延续实现是不够的。我们回顾了几种延续的实现策略,并使用正常情况下的指令计数和其他场景(包括协程和多任务处理)的延续密集型合成基准来比较它们的性能。所有这些策略都以某种方式约束了编译器,导致了难以直接测量的间接成本。我们在一组基准上使用相关的衡量标准来计算这些间接成本的上限。
Scheme and Smalltalk continuations may have unlimited extent. This means that a purely stack-based implementation of continuations, as suffices for most languages, is inadequate. We review several implementation strategies for continuations and compare their performance using instruction counts for the normal case and continuation-intensive synthetic benchmarks for other scenarios, including coroutines and multitasking. All of the strategies constrain a compiler in some way, resulting in indirect costs that are hard to measure directly. We use related measurements on a set of benchmarks to calculate upper bounds for these indirect costs.