Ошибка примера кислотного состояния
Я пытаюсь начать использовать acid-state
для проекта, но у меня проблемы с запуском демонстраций.
Бег HelloWorld.hs
из этого примера коллекции на моем 64-битном поле дает мне ошибки
acid-state.hs:26:7:
No instance for (MonadState
HelloWorldState (Update HelloWorldState))
arising from a use of `put'
Possible fix:
add an instance declaration for
(MonadState HelloWorldState (Update HelloWorldState))
In the expression: put (HelloWorldState newValue)
In an equation for `writeState':
writeState newValue = put (HelloWorldState newValue)
acid-state.hs:29:43:
No instance for (MonadReader
HelloWorldState (Query HelloWorldState))
arising from a use of `ask'
Possible fix:
add an instance declaration for
(MonadReader HelloWorldState (Query HelloWorldState))
In a stmt of a 'do' block: HelloWorldState string <- ask
In the expression:
do { HelloWorldState string <- ask;
return string }
In an equation for `queryState':
queryState
= do { HelloWorldState string <- ask;
return string }
То же самое происходит с HelloWorldNoTH.hs
также. Ни одна ошибка не проявляется в 32-разрядной системе. Есть идеи, что здесь происходит? Не удалось установить (или неправильно установить) какой-либо необходимый компонент?
Я бегу " The Glorious Glasgow Haskell Compilation System, version 7.4.1
"на 64-битном Debian Wheezy (устанавливается через haskell-platform
пакет), с Кабалой 0.14.0
, Сама машина представляет собой 64-битный Core i3. 32-битный компьютер (успешно запустивший демоверсию) отличается неочевидным образом.
1 ответ
Это не имеет абсолютно никакого отношения к архитектуре, на которой вы работаете (извините за поспешные выводы).
Оказывается, у меня была какая-то неверная конфигурация или, возможно, какая-то противоречивая cabal
библиотеки установлены. Убираю .ghc
с последующей переустановкой соответствующей библиотеки сделали свое дело. Если вы используете Debian или аналогичный:
rm -r ~/.ghc/*
cabal install acid-state