Incremental – A library for incremental computations

Incremental – A library for incremental computations

Incremental —— 一个用于增量计算的库

Incremental is a library that gives you a way of building complex computations that can update efficiently in response to their inputs changing, inspired by the work of Umut Acar et. al. on self-adjusting computations. Incremental 是一个能够让你构建复杂计算的库。受 Umut Acar 等人关于自调整计算(self-adjusting computations)研究的启发,该库允许计算过程在输入发生变化时进行高效更新。

Incremental can be useful in a number of applications, including: Building large calculations (of the kind you might build into a spreadsheet) that can react efficiently to changing data. Constructing views in GUI applications that can incorporate new data efficiently. Computing derived data while guaranteeing that the derived data stays in sync with the source data, for instance filtering or inversing a mapping. Incremental 可应用于多种场景,包括:构建能够对数据变化做出高效响应的大型计算(类似于你在电子表格中构建的计算);在 GUI 应用程序中构建能够高效整合新数据的视图;在计算派生数据的同时,确保其与源数据保持同步,例如过滤或反转映射。

You can find detailed documentation of the library and how to use it in incremental/src/incremental_intf.ml. You can also find an informal introduction to the library in this blog post and this video. 你可以在 incremental/src/incremental_intf.ml 中找到该库的详细文档及其使用方法。此外,你还可以通过这篇博客文章和这段视频了解该库的非正式介绍。