【问题标题】:What Haskell package has a unit functor/monad?什么 Haskell 包有单位函子/单子?
【发布时间】:2013-09-24 00:14:29
【问题描述】:

我正在寻找单位函子/monad

data Unit a = Unit

我可以轻松地重新创建它,但我不想复制这种基本的东西。它曾经位于 category-extras 包 (http://hackage.haskell.org/packages/archive/category-extras/0.1/doc/html/Control-Functor.html) 中的 Control.Functor 中。我无法在 Hoogle 中找到它,也无法在类别附加组件所在的地图中找到它 (http://hackage.haskell.org/package/category-extras-1.0.2)

它似乎应该存在于 transformers 包中,因为那是 Control.Monad.Identity 所在的位置(现在是 Data.Functor.Identity)。

我能想到的最接近的现有库代码是

type Unit a = Constant () a

使用变形金刚包中的Data.Functor.Constant

【问题讨论】:

    标签: haskell monads functor


    【解决方案1】:

    Proxy 类型可能就是您所追求的。

    【讨论】:

    • 太好了,这正是我所追求的;非常感谢你。我没想到data Unit a = Unit 和我为代理写的东西是一样的,data Proxy a = a。如果 Hoogle 可以像搜索函数签名一样搜索 data 声明,那就太棒了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多