haskell - 我是否违反了抽象法?

标签 haskell category-theory

我有两个变量,第一个变量的类型为Either String Int,第二个变量的类型为IO(Either String Int)

正如您所看到的,两个变量的结构几乎相同,除了第二个变量被包装到 IO 中。

为了使其可组合,我计划将两者提升到 MonadTransformer EitherT 中,但我必须将第一个变量提升到 IO 中。

将第一个变量提升到 IO 中以使其可组合是否错误,尽管它没有发生副作用。

它即将进入 IO 上下文。

最佳答案

不,这没有错;事实上,it is encouraged .

关于haskell - 我是否违反了抽象法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47347057/

相关文章:

haskell - 学习haskell : a recursive function for creating skip-bigrams

haskell - 在 Windows 上安装 Haskell cairo

Haskell - 从一维列表中创建二维列表

haskell - 为什么单子(monad)转换器与堆叠单子(monad)不同?

haskell - 有哪些类型可以区分类别?

haskell - 我们在 Coyoneda 上申请的 "natural transformations"是为了得到一个 Functor 实际上是 "natural transformations"吗?

haskell - Vim 有什么好的 Haskell 缩进脚本吗?

haskell - 在haskell中实现程序for循环,跟踪多个变量

haskell - Haskell中的`(a -> b) -> (c -> d)`?