Proceedings of the 36th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2009
DOI: 10.1145/1480881.1480916
|View full text |Cite
|
Sign up to set email alerts
|

Positive supercompilation for a higher order call-by-value language

Abstract: Previous deforestation and supercompilation algorithms may introduce accidental termination when applied to call-by-value programs. This hides looping bugs from the programmer, and changes the behavior of a program depending on whether it is optimized or not. We present a supercompilation algorithm for a higher-order call-by-value language and we prove that the algorithm both terminates and preserves termination properties. This algorithm utilizes strictness information for deciding whether to substitute or no… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
10
0
2

Year Published

2010
2010
2018
2018

Publication Types

Select...
4
3

Relationship

0
7

Authors

Journals

citations
Cited by 18 publications
(12 citation statements)
references
References 37 publications
0
10
0
2
Order By: Relevance
“…However, we can combine supercompilers described in [10] by means of the formula 2 ′ ( , ), in which case it is possible to find two supercompilers and , such that 2 ′ ( , ) transforms the first parser into the second one 7 . In a sense, 2 and 2 ′ can be regarded as devices for breeding and multiplying supercompilers, 2 ′ being more "productive".…”
Section: Stage 2 Multi-results Supercompilation: Branching Growth Of mentioning
confidence: 99%
See 1 more Smart Citation
“…However, we can combine supercompilers described in [10] by means of the formula 2 ′ ( , ), in which case it is possible to find two supercompilers and , such that 2 ′ ( , ) transforms the first parser into the second one 7 . In a sense, 2 and 2 ′ can be regarded as devices for breeding and multiplying supercompilers, 2 ′ being more "productive".…”
Section: Stage 2 Multi-results Supercompilation: Branching Growth Of mentioning
confidence: 99%
“…Obviously, this graph of configurations is an intermediate data structure that has to be constructed and deconstructed, which slows down the supercompiler. For this reason, in order to be fast, some optimizing supercompilers [1,20,7], avoid the construction of graphs of configurations. (Let us call it "the direct approach".…”
Section: Mrsc: a Multi-results Supercompilation Frameworkmentioning
confidence: 99%
“…• append, factorial, treeflip, sumtree and raytracer have been used to benchmark other supercompilers (Jonsson and Nordlander 2009), and originate from papers on deforestation (Kort 1996;Wadler 1990). …”
Section: Benchmarksmentioning
confidence: 99%
“…Суперкомпиляторы развитых языков, используемых в каких-либо прак-тических областях: в первую очередь, это исходные работы примени-тельно к Рефалу, разработанному самим В. Ф. Турчиным как раз для такого класса задач, и их продолжение А. П. Немытых [32]. За ними по-следовали экспериментальные суперкомпиляторы для языков Java [7,8] и Haskell [1, 6,10].…”
unclassified
“…В последнее десятилетие линия «простых» суперкомпиляторов стала да-вать не столь уж «простые» плоды: на них стали разрабатываться и опробы-ваться новые идеи, которых в предыдущих суперкомпиляторах не было. Это суперкомпиляция языка с функциями высшего порядка (использующими но-вое гомеоморфное вложение) И. Г. Ключникова [29], синтез суперкомпиляции с так называемым «насыщением равенствами» С. А. Гречаником [27] и многие другие работы как в России, так и за рубежом, представленные, в частности, на 5 международных семинарах по метавычислениям имени В. Ф. Турчина в г. Переславле-Залесском 3,4,5,6,7 . Тем не менее, учебных пособий, обзорных работ, изложений методов су-перкомпиляции на простых языках и примерах катастрофически не хватает.…”
unclassified