Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Algaeff.State
SourceEffects for changing states.
module S = Algaeff.State.Make (struct type state = int end)
let forty_two = S.run ~init:100 @@ fun () ->
print_int (S.get ()); (* this will print out 100 *)
S.set 42;
S.get ()
This should be equivalent to Unmonad
applying to the standard state monad when continuations are one-shot. (The current implementation uses mutable references and this statement has not been formally proved.)