Я пробовал кислоту пример , но ошибка компиляции.
Сообщение об ошибке говорит no instance No instance for MonadState, No instance for MonadReader
.
В этой статье говорится, что это связано с двумя установленными версиями MTL.
И я использую nix-shell в nixos:
ghc-pkg list | grep acid
acid-state-0.14.3
ghc-pkg list | grep mtl
mtl-2.2.1
mtl-2.2.2
Однако, если я не использую пакет acid-state при входе в nix-shell, я получаю:
ghc-pkg list | grep mtl
mtl-2.2.2
Это, вероятно, означает, что acid-state использует версию mtl, отличную от Control.Monad.Reader.
Но в github stack.yaml из кислого состояния имеет вид lts-11.15, в котором есть mtl-2.2.2.
Так, что я должен сделать, чтобы это работало?