Effectful improvement theory
•Relational cost theory for effectful functional programming languages.•Cost as an algebraic effect.•Contextual and applicative simulation for relational cost analysis. Optimizing programs is hard. Not only one must preserve semantics, but one also needs to ensure that an optimization truly makes th...
Saved in:
| Published in: | Science of computer programming Vol. 217; p. 102792 |
|---|---|
| Main Authors: | , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Elsevier B.V
01.05.2022
|
| Subjects: | |
| ISSN: | 0167-6423, 1872-7964 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | •Relational cost theory for effectful functional programming languages.•Cost as an algebraic effect.•Contextual and applicative simulation for relational cost analysis.
Optimizing programs is hard. Not only one must preserve semantics, but one also needs to ensure that an optimization truly makes the program better. The first part, preserving program semantics, has been, and still is, the subject of much research. We follow a line of work that starts with Morris' observational equivalence, continues with Abramsky's applicative bisimilarity and Howe's method, and concludes in a recent abstract formalization of applicative bisimilarity in the presence of algebraic effects by Dal Lago, Gavazzo and Levy. The second part, ensuring that an optimization truly makes the program better, is a path less traveled, with the improvement theory of Sands being the most prominent example. In this work, we connect these two parts by obtaining an abstract theory of improvements based on effectful applicative bisimilarity that extends Sands' notion of improvement to effectful languages. |
|---|---|
| ISSN: | 0167-6423 1872-7964 |
| DOI: | 10.1016/j.scico.2022.102792 |