sclib.z
minimalistic State monad
State
scala> import sclib.z._ scala> val action = for { | a <- State[Int, Int](i => (i, i + 1)) | b <- State[Int, Int](i => (i, i + 1)) | } yield a -> b action: sclib.z.State[Int,(Int, Int)] = State(<function1>) scala> action.run(0) res1: ((Int, Int), Int) = ((0,1),2)
minimalistic
State
monad