Froc is a library for functional reactive programming in OCaml.
The interface is similar to FrTime and FlapJax, but (of course) typed, implementing a monad of changeable values. The implementation is data-driven, using the dynamic dependency graphs of Acar et al.’s self-adjusting computation.
Froc can be used with ocamljs, and with the included froc-dom library can be used for web browser programming.
And an article on "How Froc Works":
http://ambassadortothecomputers.blogspot.ca/2010/05/how-froc-works.html