Описание тега ioref
Для IORef на языке программирования Haskell и их явно монадических эквивалентов в других языках программирования.
IORef, изначально определенный в языке программирования Haskell, представляет собой ссылку во время выполнения на значение, которое может быть изменено любое количество раз во время выполнения.
Он тесно связан с изменяемыми переменными, но поскольку IORef всегда изменяются внутри монады ввода-вывода, по крайней мере в Haskell, типобезопасность языка программирования гарантирует, что IORef не могут быть изменены чистыми функциями (если только unsafePerformIO
или вызываются аналогичные небезопасные функции).