【问题标题】:Scheme Symbols: Continuation Passing Style Examples方案符号:继续传递样式示例
【发布时间】:2014-03-27 20:18:16
【问题描述】:

Wikipedia article about CPS 中有以下代码sn-p,表面上来自Scheme:

(define (pyth& x y k)
 (*& x x (lambda (x2)
          (*& y y (lambda (y2)
                   (+& x2 y2 (lambda (x2py2)
                              (sqrt& x2py2 k))))))))

我找不到任何其他示例,也找不到“pyth&”、“*&”和“+&”的用法说明。很多谷歌搜索只发现还有其他形式,例如“=&”和“/&”。

【问题讨论】:

    标签: syntax scheme continuation-passing


    【解决方案1】:

    这些只是函数名称,pyth& 是 CPS,pythagoras 过程,*& 是 CPS 乘法过程,+& 是 CPS 加法过程,与它们通常的对应物不同,因为它们在最后一个参数,末尾的& 只是一个命名约定,以提醒您这一点,在链接段落的开头说明:

    在 CPS 中,每个过程都有一个额外的参数,表示函数计算的结果应该如何处理

    【讨论】:

      猜你喜欢
      • 2012-09-17
      • 1970-01-01
      • 1970-01-01
      • 2012-07-04
      • 2011-11-17
      • 2016-06-25
      • 1970-01-01
      • 2020-09-23
      • 1970-01-01
      相关资源
      最近更新 更多