You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

询问EitherT的Applicative实例定义位置,为何未在指定模块中

EitherT的Applicative实例位置说明

EitherT的Applicative实例就定义在它所在的Control.Monad.Trans.Either模块中,完全符合避免孤儿实例的规则——实例定义在类型自身的模块里。

你在Haddock文档中找不到它,通常是因为该实例是通过DeriveApplicative语言扩展自动推导生成的,而Haddock默认不会展示这类自动推导的实例。直接查看该模块的源码就能看到对应的实现逻辑:

  • pure会将目标值包装为Right,再嵌入到底层Applicative上下文;
  • <*>则借助底层Applicative的liftA2函数,完成两个EitherT值的应用操作。

内容的提问来源于stack exchange,提问作者mherzl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 11:03:25