@MISC{Löh09thenetherlandspull-ups,, author = {Andres Löh and Johan Jeuring and Www. Cs. Uu. Nl Issn and Sean Leather and Andres Löh and Johan Jeuring}, title = {The NetherlandsPull-Ups, Push-Downs, and Passing It Around Exercises in Functional Incrementalization}, year = {2009} }
Bookmark
OpenURL
Abstract
Abstract. Programs in functional programming languages with algebraic datatypes are often datatype-centric and use folds or fold-like functions. Incrementalization of such a program can significantly improve its performance. Functional incrementalization separates the recursion from the calculation and significantly reduces redundant computation. In this paper, we motivate incrementalization with a simple example and present a library for transforming programs using upwards, downwards, and circular incrementalization. We also give a datatype-generic implementation for the library and demonstrate the incremental zipper, a zipper extended with attributes. 1