小编Sof*_*dom的帖子

关于Haskell的Parametricity概念

这是"第一原理的Haskell编程"一书中的一个问题.

我正在阅读上面提到的书,第5章,练习2:参数化.

复制了这本书.

通过查看 - > a - > a,我们可以更加舒适地了解参数.这个假设函数a - > a - > a有两个且只有两个实现.

我不明白"只有两个实现"部分?可以任何人向我解释为什么只有2个实现?

haskell

3
推荐指数
1
解决办法
175
查看次数

关于Haskell列表monoid实现

阅读Haskell Monoid源代码,我看到了,

instance Monoid [a] where
        {-# INLINE mempty #-}
        mempty  = []
        {-# INLINE mconcat #-}
        mconcat xss = **[x | xs <- xss, x <- xs]**
Run Code Online (Sandbox Code Playgroud)

我不明白xss,什么是xss?和列表生成器部分也很混乱,xs < - xss,怎么来的?

更新:

列表理解很容易理解,但看看代码,xss,xs,x,3个符号之间的关系是什么,为什么xs < - xss?我可以写xss < - xsss吗?

haskell

-2
推荐指数
1
解决办法
108
查看次数

标签 统计

haskell ×2