尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。
We present an abstract machine for a strong call-by-need strategy in the lambda calculus. The machine has been derived automatically from a higher-order evaluator that uses the technique of memothunks to implement laziness. The derivation has been done with the use of an off-the-shelf transformation tool implementing the "functional correspondence" between higher-order interpreters and abstract machines, and it yields a simple and concise description of the machine. We prove that the resulting machine conservatively extends the lazy version of Krivine machine for the weak call-by-need strategy, and that it simulates the normal-order strategy in bilinear number of steps.
DOI 原文 ·
@article{paperbot1482,
title = {A simple and efficient implementation of strong call by need by an abstract machine},
author = {Małgorzata Biernacka and Witold Charatonik and Tomasz Drab},
journal = {Proceedings of the ACM on Programming Languages},
volume = {6},
number = {ICFP},
year = {2022},
doi = {10.1145/3549822}
}