【发布时间】:2017-07-20 15:44:39
【问题描述】:
http://matt.might.net/articles/a-normalization/ 给出了将代码从 S 表达式转换为 A 范式的算法
作者做出了不寻常的选择,以延续传递风格编写算法。 (也就是说,不是任何阶段的中间代码都用CPS来表示,而是用CPS来写做转换的手写代码。)
就我所看到的它是如何工作的而言,它是有道理的,并且延续代表每个生成的let 的主体,但直觉上令人惊讶的是,CPS 应该是人类编写代码的最清晰的方式。
这实际上是 ANF 转换算法中最清晰的形式,还是有不使用 CPS 的已知更好的方法?
【问题讨论】:
标签: scheme continuation-passing