MonadReader
定义为:
class Monad m => MonadReader r m | m -> r where {...}
mtl-2.1.3.1中的,但唯一使用的扩展名为UndecidableInstances
。如果我在本地定义,GHC会建议我启用MultiParamTypeClasses
和FunctionalDependencies
。
但是为什么我没有在mtl源中看到这两个启用?
答案 0 :(得分:1)
它们列在mtl.cabal文件的extensions
部分中。
最新版本的cabal
建议将此部分分为两部分:
default-extensions
将应用于当前目标other-extensions
默认情况下将不,但程序员应在每个文件中明确启用它们(使用pragma)。