Incremental es una biblioteca de programación que permite construir cálculos complejos capaces de actualizarse de manera eficiente cuando cambian sus datos de entrada. La herramienta está inspirada en los trabajos de Umut Acar y otros autores sobre computación autoajustable, una técnica que persigue propagar únicamente las dependencias afectadas por un cambio en lugar de recalcular todo el resultado desde cero.
Entre los usos más habituales se encuentra la creación de grandes hojas de cálculo reactivas, donde la modificación de una celda no obliga a recalcular toda la matriz, sino solo las rutas dependientes. También es útil en interfaces gráficas, donde los componentes visuales deben reflejar cambios en los datos subyacentes sin perder rendimiento, y en cualquier escenario en el que se necesite mantener datos derivados sincronizados con sus fuentes, por ejemplo al filtrar listas o al invertir un mapeo.
La biblioteca está desarrollada en OCaml por Jane Street, una firma conocida por su uso intensivo del lenguaje en sistemas de trading y de infraestructura financiera. Su documentación detallada se encuentra en el archivo de interfaz incremental_intf.ml, y el equipo ha publicado además una introducción informal en un artículo de blog y una charla en vídeo que explican los conceptos y patrones de uso paso a paso. En conjunto, Incremental ofrece a las desarrolladoras y desarrolladores una primitiva reusable para modelar flujos de datos cambiantes sin tener que reinventar a mano la lógica de propagación de cambios.
