小编gau*_*168的帖子

为什么必须手动验证 Haskell 的类型类定律?

为什么需要为 Haskell 中的类型类法则明确编写检查(可能使用快速检查)?

例如用于测试字符串幺半群的结合性:

leftIdcheck :: Monoid a => a -> Bool
leftIdcheck a = a <> mempty == a

quickCheck (leftIdcheck :: String -> Bool)
Run Code Online (Sandbox Code Playgroud)

但这工作量太大了!为什么 Haskell 编译器不能在默认情况下自行检查所有这些并告诉我我的类型上的幺半群实例不满足恒等律?

是否有任何库或语言扩展允许我们在编写程序时内置这些检查,而不必单独编写它们?这似乎很容易出错。

在相关说明中,Agda 是否让我们免费获得这些检查/证明,还是我们也必须在那里手动编写它们?

haskell typeclass

4
推荐指数
1
解决办法
127
查看次数

如果 haskell 中的每个函数都是柯里化的,那么我为什么不能创建部分对?

菜鸟在这里。我不确定是否每个函数都应该被柯里化(但这就是我的感觉)。

如果确实如此,那又是怎么回事

(,) 1
Run Code Online (Sandbox Code Playgroud)

抛出错误?它不应该返回一个函数,当应用于另一个值时会给出一个元组吗?

haskell currying

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

使用汇总设置 vue3?

我想用现在可用的 vuejs3 测试版设置一个项目。我想把它编译成es模​​块,所以我不能使用webpack。

是否有任何可用的种子项目/指南可以使用 rollup 设置 vue3 以发出 es 模块包。

rollup rollupjs vuejs3

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

标签 统计

haskell ×2

currying ×1

rollup ×1

rollupjs ×1

typeclass ×1

vuejs3 ×1