Incremental Computation with Names
Matthew A. Hammer, Jana Dunfield, Kyle Headley, Nicholas Labich,, Jeffrey S. Foster, Michael Hicks, David Van Horn

TL;DR
This paper introduces NOMINAL ADAPTON, a language with first-class names that enhances incremental computation efficiency, enabling reuse across program runs, formal verification, and significant speedups over previous systems.
Contribution
It presents NOMINAL ADAPTON, a novel language design incorporating first-class names for improved incremental computation and formalizes its correctness.
Findings
Efficient incrementalization of standard patterns like maps, folds, unfolds
Construction of incremental probabilistic trees and tries
Large speedups over from-scratch and previous systems
Abstract
Over the past thirty years, there has been significant progress in developing general-purpose, language-based approaches to incremental computation, which aims to efficiently update the result of a computation when an input is changed. A key design challenge in such approaches is how to provide efficient incremental support for a broad range of programs. In this paper, we argue that first-class names are a critical linguistic feature for efficient incremental computation. Names identify computations to be reused across differing runs of a program, and making them first class gives programmers a high level of control over reuse. We demonstrate the benefits of names by presenting NOMINAL ADAPTON, an ML-like language for incremental computation with names. We describe how to use NOMINAL ADAPTON to efficiently incrementalize several standard programming patterns -- including maps, folds,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
