This paper presents a semantics of self-adjusting computation and proves that the seman-tics are correct and consistent. The semantics integrate change propagation with the classic idea of memoization to enable reuse of computations under mutation to memory. During eval-uation, reuse of a computation via memoization triggers a change propagation that adjusts the reused computation to reflect the mutated memory. Since the semantics integrate memoization and change-propagation, it involves both non-determinism (due to memoization) and muta-tion (due to change propagation). Our consistency theorem states that the non-determinism is not harmful: any two evaluations of the same program starting at the same state yield the same result. Our correc...
Dependence graphs and memoization can be used to efficiently update the output of a program as the i...
We describe a new framework for self-modifying programs, that is programs which can execute what the...
When people perform computations, they routinely monitor their results, and try to adapt and improve...
This paper presents a semantics of self-adjusting computation and proves that the semantics is corre...
Self-adjusting computation is an evaluation model in which pro-grams can respond efficiently to smal...
Self-adjusting computation enables writing programs that can automatically and efficiently respond t...
Self-adjusting computation is a language-based approach to writing programs that respond dynamically...
Computational problems that involve dynamic data have been an important subject of study in programm...
AbstractWe present a Standard ML library for writing programs that automatically adjust to changes t...
document are those of the author and should not be interpreted as representing the official policies...
Memoization may be viewed as a mechanism for re-using a computation---if a function is re-applied to...
Memoization may be viewed as a mechanism for re-using a computation—if a function is re-applied to t...
This papers proposes techniques for writing self-adjusting programs that can adjust to any change to...
Computational problems that involve dynamic data, such as physics simulations and program developmen...
International audienceComputational problems that involve dynamic data, such as physics simulations ...
Dependence graphs and memoization can be used to efficiently update the output of a program as the i...
We describe a new framework for self-modifying programs, that is programs which can execute what the...
When people perform computations, they routinely monitor their results, and try to adapt and improve...
This paper presents a semantics of self-adjusting computation and proves that the semantics is corre...
Self-adjusting computation is an evaluation model in which pro-grams can respond efficiently to smal...
Self-adjusting computation enables writing programs that can automatically and efficiently respond t...
Self-adjusting computation is a language-based approach to writing programs that respond dynamically...
Computational problems that involve dynamic data have been an important subject of study in programm...
AbstractWe present a Standard ML library for writing programs that automatically adjust to changes t...
document are those of the author and should not be interpreted as representing the official policies...
Memoization may be viewed as a mechanism for re-using a computation---if a function is re-applied to...
Memoization may be viewed as a mechanism for re-using a computation—if a function is re-applied to t...
This papers proposes techniques for writing self-adjusting programs that can adjust to any change to...
Computational problems that involve dynamic data, such as physics simulations and program developmen...
International audienceComputational problems that involve dynamic data, such as physics simulations ...
Dependence graphs and memoization can be used to efficiently update the output of a program as the i...
We describe a new framework for self-modifying programs, that is programs which can execute what the...
When people perform computations, they routinely monitor their results, and try to adapt and improve...