方案编程语言说
Scheme 允许使用过程捕获任何表达式的延续
call/cc
。call/cc
必须传递p
一个参数的过程。call/cc
构造当前延续的具体表示并将其传递给p
. 延续本身由过程表示k
。每次k
应用于一个值时,它都会将该值返回给call/cc
应用程序的延续。从本质上讲,这个价值变成了应用的价值call/cc
。如果p
不调用k
就返回,则过程返回的值成为应用程序的值call/cc
。
p
就被调用而言,是否有以下两种定义等价的方式call/cc
:
p
不调用就返回k
,p
调用k
它的其他返回值?
我不确定如何call/cc
定义。除了通过调用间接调用外,是否call/cc
曾直接调用延续?k
p
k
两者都call/cc
和p
不调用 continuation 完全没问题k
吗?