package incremental

  1. Overview
  2. Docs
Library for incremental computations

Install

dune-project
 Dependency

Authors

Maintainers

Sources

incremental-v0.15.0.tar.gz
sha256=8dc7e111fe3e52068b60300d72a744a63b40a1df79c67b835b364bdceb321b36

doc/incremental/Incremental/Expert/index.html

Module Incremental.ExpertSource

A low-level, experimental interface to incremental. This is useful when you need more control over the dependency graph, for performance reasons. It comes at the cost that it's much harder to use right. Specifically, here is what you can do with an expert node:

  • learn when any child changes, so the expert node can update itself incrementally, rather than having to look at the value of all its children.
  • incrementally update its set of parents.
  • select which parents should fire.

If you use this interface, you are most definitely advised to test carefully, and in particular you should try it out using incremental_debug, which is going to check most pre-conditions.

Sourcemodule Dependency : sig ... end
Sourcemodule Node : sig ... end
Sourcemodule Step_result : sig ... end
Sourceval do_one_step_of_stabilize : _ State.t -> Step_result.t

do_one_step_of_stabilize state runs a part of stabilization. This can be used as a replacement for stabilize, to split up potentially long calls to stabilize.

A stabilization is ongoing until do_one_step_of_stabilize returns Done. During such a stabilization, behavior is the same as during a regular stabilization.

Calling do_one_step_of_stabilize during a call to do_one_step_of_stabilize or stabilize is a programming error but it is not detected. Behavior is undefined.