gpt4 book ai didi

haskell - 签名为 : `(a -> a -> b) -> (a -> b)` 的函数名称

转载 作者:行者123 更新时间:2023-12-04 22:55:41 25 4
gpt4 key购买 nike

我想知 Prop 有以下签名和实现(Haskell-notation)的函数是否有一个好名字:

humble :: (a -> a -> b) -> a -> b
humble f x = f x x

似乎与 fold1 有某种关系( fold 没有基本情况)。

最佳答案

正如@4caSTLe 在评论中提到的,您正在寻找的函数是 join Control.Monad .它的类型是

join :: Monad m => m (m a) -> m a

简单的 reader monad 是 (->) r ,所以如果我们设置 m ~ (->) r ,我们得到
join :: (->) r ((->) r a) -> (->) r a

或者,更简洁地说,
join :: (r -> r -> a) -> (r -> a)

这就是你想要的。

关于haskell - 签名为 : `(a -> a -> b) -> (a -> b)` 的函数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48267798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com