我有一个自然转换的解释器MyADT ~> MyState
。
我什么时候都没有问题type MyState[A] = State[MyClass, A]
。但是,如果我有type MyState[A] = State[MyClass, M[A]]
,其中 M 是任何单子,那么我会收到错误:could not find implicit value parameter M: cats.Monad[MyState]
调用foldMap
.
问题是什么?
我有一个自然转换的解释器MyADT ~> MyState
。
我什么时候都没有问题type MyState[A] = State[MyClass, A]
。但是,如果我有type MyState[A] = State[MyClass, M[A]]
,其中 M 是任何单子,那么我会收到错误:could not find implicit value parameter M: cats.Monad[MyState]
调用foldMap
.
问题是什么?