The goal of the STING project is to enable self-adjusting computation, a paradigm of computing where programs can automatically adjust to changes to their data. To this end, we work on language design (type theory, semantics) and implementation, and algorithm design and implementation. You can find more information in our publications.
You can download the code for the self-adjusting computation library and for a number of dynamic and kinetic applications. The library and the applications are written in the Standard ML language. Facilities for testing and profiling the applications are also included.
If you have a relatively recent version of the SML/NJ compiler, then you can compile, run, test, and time the applications. Some scripts for timings with the MLton compiler are also included.
The code is a working version and provided mostly as a reference. In the near future, we will release a more user friendly version with instructions for using the library.