Описание тега st-monad
Строгая монада-преобразователь состояний. Вычисление типа ST s a преобразует внутреннее состояние, индексированное s, и возвращает значение типа a.
Строгая монада-преобразователь состояний. Вычисление типаST s a
преобразовывает внутреннее состояние, индексируемое s
, и возвращает значение типа a
. Вs
параметр либо
• переменная неустановленного типа (внутри вызовов runST
), или
• RealWorld
(внутри призывов stToIO
). Он служит для сохранения внутренних состояний различных вызововrunST
отдельно друг от друга и от призывов stToIO
.
В >>=
а также >>
операции являются строгими в состоянии (но не в значениях, хранящихся в состоянии). Например,
runST (writeSTRef _|_ v >>= f) = _|_