Compiling without continuations

Compiling without continuations
复制标题

不继续编译

DOI:
--
复制
发表时间:
2017
期刊:
ACM-SIGPLAN Symposium on Programming Language Design and Implementation
影响因子:
--
通讯作者:
Simon Peyton Jones
Simon Peyton Jones
中科院分区:
--
文献类型:
--
作者:
Luke Maurer;P. Downen;Z. Ariola;Simon Peyton Jones

文献摘要

被引文献

相似文献

编译器中的许多研究领域都提出了连接点的概念连接点是不同执行路径聚集在一起的地方。连接点通常被视为函数或延续,但我们认为是时候研究它们本身了。我们表明,将连接点添加到直接风格的函数中间语言是一个简单但强大的变化,允许执行新的优化,包括对列表融合的显着改进。最后,我们报告最近的工作中添加连接点的中间语言的格拉斯哥Haskell的编译器。
Many fields of study in compilers give rise to the concept of a join point—a place where different execution paths come together. Join points are often treated as functions or continuations, but we believe it is time to study them in their own right. We show that adding join points to a direct-style functional intermediate language is a simple but powerful change that allows new optimizations to be performed, including a significant improvement to list fusion. Finally, we report on recent work on adding join points to the intermediate language of the Glasgow Haskell Compiler.