Data.ReactiveValue

Reactive values: common interface

class ReactiveValueRead a b m

class ReactiveValueWrite a b m

class ReactiveValueReadWrite a b m

Reactive rules (data dependency/passing building combinators)

(=:>)

(<:=)

(=:=)

Purely functional implementation

Setters, getters and notifiers

type FieldGetter m a

type FieldSetter m a

type FieldNotifier m a

Concrete types implementing the above interface

data ReactiveFieldRead m a

data ReactiveFieldWrite m a

data ReactiveFieldReadWrite m a

Activatable reactive values (producing units)

type ReactiveFieldActivatable m

mkActivatable

class ReactiveValueActivatable m a

Creating RVs based on other RVs

Lifting onto readable values

constR

initRW

Lifting onto readable values

liftR

liftR2

liftMR

Lifting onto writeable values

liftW

liftW2

liftMW

readOnly

writeOnly

Lift monadic operations

Lifting (sink) computations into writable RVs.

wrapMW

wrapDo

wrapDo_

Lifting (source) computations into readable RVs.

wrapMR

wrapMRPassive

Lifting onto read-write values

Bijections

data BijectiveFunc a b

bijection

direct

inverse

type Involution a

involution

Actual lifting

liftRW

liftRW2

pairRW

eqCheck

Modifying reactive values (applying modification transformations)

modRW

reactiveValueModify

Deactivating reactive values

passivelyR

passivelyRW

Conditionals

ifRW_

ifRW

guardRO

Category theoretic definitions

governingR