I added a small theory of calculations modulo a state and an example. A calculation consists of chained actions where an action is a function working on a state returning a result and a new state.
The gist is:
## Calculate:return a - calculate further with value a
def return =
[ A S -> (A, S) ]
## Calculate:chain f g - first do f, then g
def chain =
[ F G S -> [(A, S) -> G A S] (F S) ]
## Calculate:run f s - run calculation f on state s
def run =
[ F S -> [(A, S) -> A] (F S) ]
Which are, of course, a monad return and bind with a run function.
The
calculation theory and the
state game. The state game is straightforward, state and manipulation functions are defined, after which the game loop function results in a chain of actions, which are run on the state.
No comments:
Post a Comment