Abstract. Programs in languages such as Haskell are often datatype-centric and make extensive use of folds on that datatype. Incremen-talization of such a program can significantly improve its performance by transforming monolithic atomic folds into incremental computations. Functional incrementalization separates the recursion from the applica-tion of the algebra in order to reduce redundant computations and reuse intermediate results. In this paper, we motivate incrementalization with a simple example and present a library for transforming programs using upwards, downwards, and circular incrementalization. Our benchmarks show that incrementalized computations using the library are nearly as fast as handwritten atomic functions.
A systematic stepwise transformational approach is given for deriving incremental programs from non-...
One style of functional programming is based purely on recursive equations. Such equations are easy ...
Incremental computations can improve the performance of interactive programs such as spreadsheet pro...
Abstract. Programs in functional programming languages with alge-braic datatypes are often datatype-...
Incremental computation takes advantage of repeated computations on inputs that differ slightly fro...
This paper presents a monadic approach to incremental computation, suitable for purely functional la...
Incrementalization is at the core of a systematic program de-sign method, especially for the design ...
A systematic approach is given for deriving incremental programs from non-incremental programs writt...
Incremental computation takes advantage of repeated computations on inputs that differ slightly from...
We present an algorithm for unrolling recursion in the Haskell functional language. Adapted from a s...
Incremental computations can improve the performance of interactive programs such as spreadsheet pro...
AbstractThe paper presents a system, ADATE, for automatic functional programming. ADATE uses specifi...
AbstractA systematic approach is given for deriving incremental programs from non-incremental progra...
Many researchers have proposed programming languages that sup-port incremental computation (IC), whi...
The paper presents a system, ADATE, for automatic functional programming. ADATE uses speci cations t...
A systematic stepwise transformational approach is given for deriving incremental programs from non-...
One style of functional programming is based purely on recursive equations. Such equations are easy ...
Incremental computations can improve the performance of interactive programs such as spreadsheet pro...
Abstract. Programs in functional programming languages with alge-braic datatypes are often datatype-...
Incremental computation takes advantage of repeated computations on inputs that differ slightly fro...
This paper presents a monadic approach to incremental computation, suitable for purely functional la...
Incrementalization is at the core of a systematic program de-sign method, especially for the design ...
A systematic approach is given for deriving incremental programs from non-incremental programs writt...
Incremental computation takes advantage of repeated computations on inputs that differ slightly from...
We present an algorithm for unrolling recursion in the Haskell functional language. Adapted from a s...
Incremental computations can improve the performance of interactive programs such as spreadsheet pro...
AbstractThe paper presents a system, ADATE, for automatic functional programming. ADATE uses specifi...
AbstractA systematic approach is given for deriving incremental programs from non-incremental progra...
Many researchers have proposed programming languages that sup-port incremental computation (IC), whi...
The paper presents a system, ADATE, for automatic functional programming. ADATE uses speci cations t...
A systematic stepwise transformational approach is given for deriving incremental programs from non-...
One style of functional programming is based purely on recursive equations. Such equations are easy ...
Incremental computations can improve the performance of interactive programs such as spreadsheet pro...