This package contains a general definition of Reactive Values and several
useful combinators. A reactive value is a typed mutable value with access
properties and change propagation. Access property can be read-only,
read-write or read-write.
How an RV is actually implemented, and when and how change propagation is
executed is dependent on each RV. For instance, Gtk widget properties would
normally use the standard event-handler installers to implement change
propagation, whereas pure Haskell values might fork a thread (or not) and
propagate changes asynchronously.
RVs can be created from pure models (see
<https://github.com/keera-studios/keera-hails/tree/master/keera-hails-mvc-model-lightmodel
keera-hails-mvc-model-lightmodel> and
<https://github.com/keera-studios/keera-hails/tree/master/keera-hails-mvc-model-protectedmodel
keera-hails-mvc-model-protectedmodel>), Gtk+/WX/Qt/HTML DOM/Android widget
properties/event handlers/getters/setters, files, sockets, FRP networks.
Other backends are also available. See
keera-hails for a list of
available backends, tutorials, etc.