Reads the value from the Ref.
Atomically modifies the Ref with the specified function, which computes
a return value for the modification.
Atomically modifies the Ref with the specified function, which computes
a return value for the modification. This is a more powerful version of
update.
Atomically modifies the Ref with the specified partial function, which computes
a return value for the modification if the function is defined in the current value
otherwise it returns a default value.
Atomically modifies the Ref with the specified partial function, which computes
a return value for the modification if the function is defined in the current value
otherwise it returns a default value.
This is a more powerful version of updateSome.
Writes a new value to the Ref, with a guarantee of immediate
consistency (at some cost to performance).
Writes a new value to the Ref without providing a guarantee of
immediate consistency.
Atomically modifies the Ref with the specified function.
Atomically modifies the Ref with the specified function. This is not
implemented in terms of modify purely for performance reasons.
Atomically modifies the Ref with the specified partial function.
Atomically modifies the Ref with the specified partial function.
if the function is undefined in the current value it returns the old value without changing it.
A mutable atomic reference for the
IOmonad. This is theIOequivalent of a volatilevar, augmented with atomic operations, which make it useful as a reasonably efficient (if low-level) concurrency primitive.