Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming 2015
DOI: 10.1145/2790449.2790512
|View full text |Cite
|
Sign up to set email alerts
|

Improvements in a functional core language with call-by-need operational semantics

Abstract: Abstract. An improvement is a correct program transformation that optimizes the program, where the criterion is that the number of computation steps until a value is obtained is decreased. This paper investigates improvements in both -an untyped and a polymorphically typed -call-by-need lambda-calculus with letrec, case, constructors and seq. Besides showing that several local optimizations are improvements, the main result of the paper is a proof that common subexpression elimination is correct and an improve… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
3
0

Year Published

2015
2015
2019
2019

Publication Types

Select...
3
2
1

Relationship

0
6

Authors

Journals

citations
Cited by 7 publications
(4 citation statements)
references
References 17 publications
1
3
0
Order By: Relevance
“…The first expression has four separate occurrences of a (long) list, whereas the second expression shares the lists, where list varies in length in the experiments. The results are consistent with the claim that common subexpression elimination (cse) is a time improvement [14], and show that (cse) and an increase of sharing in general may increase the (maximal) space usage. In neither direction the example is a space improvement, which shows that (cse) is not a space improvement.…”
Section: Analyses For Examplessupporting
confidence: 88%
See 3 more Smart Citations
“…The first expression has four separate occurrences of a (long) list, whereas the second expression shares the lists, where list varies in length in the experiments. The results are consistent with the claim that common subexpression elimination (cse) is a time improvement [14], and show that (cse) and an increase of sharing in general may increase the (maximal) space usage. In neither direction the example is a space improvement, which shows that (cse) is not a space improvement.…”
Section: Analyses For Examplessupporting
confidence: 88%
“…For measuring the space-behavior of s, we use the maximum size occurring in an nogc-reduction sequence to a WHNF: This measure is very strict and especially appropriate if the available space is limited. A transformation is a time improvement [14,13] if it never increases the rln-reduction length, and a transformation is a space improvement if it never increases the space consumption. These relations are precongruences.…”
Section: Time-and Space-improvementsmentioning
confidence: 99%
See 2 more Smart Citations