References which can be joined and on which lenses can be applied
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
src
.gitignore
LICENSE
Model.agda
README.md
Setup.hs
TODO
changelog
lensref.cabal

README.md

lensref: State-based FRP framework

lensref is an FRP framework which is built around views of the program state. The views can be editable or non-editable.

An editable view of the program state can be modelled by a lens whose domain is the program state. In lensrefs terminology such views are called references. lensref provides combinators to create references with bidirectional dependencies between them which are automatically maintained as the program state evolves.

A non-editable view of the program state can be modelled by a function whose domain is the program state. In lensrefs terminology such views are called state-varying values or read-only references. State-varying values form a monad.

Compared to other FRP frameworks, lensref has an emphasis on state-varying values rather than time-varying values. The program state varies by time so a state-varying value is also time-varying value but the opposite direction is generally not true because the program may have the same state in different time intervals.

Links