【问题标题】:Is the Eff-monad in purescript inspired by www.eff-lang.org?purescript 中的 Eff-monad 是否受到 www.eff-lang.org 的启发?
【发布时间】:2015-05-03 01:58:10
【问题描述】:

阅读 Eff-Language,我想知道是否有类似的想法已经在使用。 Eff-Language 提到了一篇名为“Inferring Algebraic Effects”的论文,它描述了 Eff 用来推断效果的算法。有相似之处吗?

【问题讨论】:

    标签: functional-programming purescript


    【解决方案1】:

    我在用 PureScript 编写效果系统时就知道 Eff,所以你可能会说它是受它启发的。另一个灵感来源是 Koka 编程语言,特别是论文“Koka: Programming with Row Polymorphic Effect Types”。鉴于 PureScript 已经有用于处理记录的行类型,尝试将其重新用作效果系统是有意义的。

    PureScript 使用一个名为 Eff 的效果 monad(没有关系!)来处理“原生”效果(即由运行时系统提供的效果,而不是您可能在 Haskell 中使用 monad 转换器建模的“用户空间”效果)。 Eff 很像 Haskell 的 IO,但由一系列效果类型改进。所以 PureScript 中基于行的效果的路径非常简单——我们只需要允许行包含除 * 之外的其他类型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-06
      • 1970-01-01
      • 1970-01-01
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      相关资源
      最近更新 更多