Order-of-evaluation analysis for destructive updates in strict functional languages with flat aggregates
- 1 July 1993
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 266-275
- https://doi.org/10.1145/165180.165222
Abstract
The aggregate update problem in functional languages isconcerned with detecting cases where a functional array updateoperation can be implemented destructively in constanttime. Previous work on this problem has assumed a fixedorder of evaluation of expressions. In this paper, we devise asimple analysis, for strict functional languages with flat aggregates,that derives a good order of evaluation for makingthe updates destructive. Our work improves Hudak's work[14] on abstract reference...Keywords
This publication has 9 references indexed in Scilit:
- Retire Fortran?Communications of the ACM, 1992
- Globalization and live variablesPublished by Association for Computing Machinery (ACM) ,1991
- Syntactic detection of single-threading using continuationsLecture Notes in Computer Science, 1991
- On determining lifetime and aliasing of dynamically allocated data in higher-order functional specificationsPublished by Association for Computing Machinery (ACM) ,1990
- Update analysis and the efficient implementation of functional aggregatesPublished by Association for Computing Machinery (ACM) ,1989
- Replacing function parameters by global variablesPublished by Association for Computing Machinery (ACM) ,1989
- A semantic model of reference counting and its abstraction (detailed summary)Published by Association for Computing Machinery (ACM) ,1986
- Detecting global variables in denotational specificationsACM Transactions on Programming Languages and Systems, 1985
- Pebble games for studying storage sharingTheoretical Computer Science, 1982