Я не видел много примеров монады состояния scalaz. Есть этот пример , но его трудно понять, и есть только один другой вопрос о переполнении стека, кажется.
Я собираюсь опубликовать несколько примеров, с которыми я играл, но я бы приветствовал дополнительные. Также, если кто-нибудь может предоставить пример того, почему для этого используются init
, modify
, put
и gets
.
Edit: здесь - потрясающая двухчасовая презентация монады состояния.