我试图将以下地图表示为Haskell函数:
给定两种类型a, b考虑F(a, b)由该类型的函数组成的函数族
f :: a -> a -> ... -> a -> b
Run Code Online (Sandbox Code Playgroud)
用n的重复a,这里n是一个大于零的整数.我想是每个函数映射f中F(a, b)的功能f' :: [a] -> b,这样f x1 x2 ... xr = f' [x1, ..., xr],当r比参数的数量较小的f花费(即我在寻找的功能listify :: F(a, b) -> ([a] -> b)).如果有多个元素而不是f参数,则应丢弃其他元素:
f :: a -> a -> b
(listify f xs) == (listify f $ take 2 xs) …Run Code Online (Sandbox Code Playgroud)