Блог пользователя nagibator

Автор nagibator, 8 лет назад, перевод, По-русски

Я люблю Haskell и время от времени решаю задачи на этом языке, но до этого как-то получалось так, что я выбирал задачи, в которых обходился без монады ST. Сегодня я попробовал решить 686D - Кай и снежинки и мне понадобилась монада ST, чтобы представить граф в виде списков смежности вместо списка родительских вершин. Конечно же, все, что я сделал, работало нормально на моем компьютере, но когда я попытался отправить решение на проверку, CF сказал, что у меня ошибка компиляции:

Can't compile file:

program.hs:2:1:
    Control.Monad.ST: Can't be safely imported!
    The module itself isn't safe.

program.hs:3:1:
    Data.Array.ST: Can't be safely imported!
    The module itself isn't safe.

Вот та самая попытка: 18723133
Что нужно сделать, чтобы оно заработало? Как пользоваться ST или чем-то аналогичным? Почему ST считается небезопасной?

Полный текст и комментарии »

  • Проголосовать: нравится
  • +31
  • Проголосовать: не нравится