14得票2回答
为什么这个函数的pointfree版本看起来是这样的?

我一直在玩弄Haskell,包括练习以无参形式编写函数。这里是一个示例函数:dotProduct :: (Num a) => [a] -> [a] -> a dotProduct xs ys = sum (zipWith (*) xs ys) 我想以点语法的形式编写这个函数。...

14得票1回答
样式 vs 性能:使用向量

这里是代码: {-# LANGUAGE FlexibleContexts #-} import Data.Int import qualified Data.Vector.Unboxed as U import qualified Data.Vector.Generic as V {-#...

14得票2回答
何时使用无意义样式?

许多 Haskell 程序员(包括我)喜欢无意义风格,尤其是在编写复杂的解析器时。它们使代码更易读且不冗长。但有时候,情况恰恰相反(例如,在滥用 Monad 和类似于 (->) a 的实例时)。 请给我一些基本指南,您认为何时使用无意义风格有用,何时不应使用。例如,如果必须使用部分组合...

13得票3回答
Haskell中的点自由问题

我试图将以下Haskell代码转换为无点风格,但一直未能成功。bar f g xs = filter f (map g xs ) 我是Haskell的新手,希望能得到任何帮助。

13得票3回答
这个函数能以“点无形式”写出吗?如果不能,为什么?

一个相关的问题是这个,但是有些回答说几乎任何东西都可以变成无点函数,那么这个函数有什么问题?\[x] -> x http://pointfree.io/似乎不能用点分式风格写。这是意味着它无法以那种方式书写吗?如果是这样,那么理论上的原因是什么?我只能观察到上面的函数是head(或las...

13得票2回答
Haskell中的隐式函数组合

假设我有一个像这样定义的mean函数:mean xs = sum xs / (fromIntegral $ length xs) 但我希望以某种隐含的形式呈现,就像这样:mean = sum / (fromIntegral . length) 是否有内置的Haskell方法可以做类似于这样的事...

13得票3回答
在Haskell中使用多值函数进行功能组合?

我想知道是否有可能对于拥有多个参数的函数进行函数组合。我希望能够像这样做:x = (+3).(*) 将 x 设为一个函数,该函数将两个数字相乘的积加上三。

13得票4回答
在 point-free 风格中编写简单的 Haskell 函数

我正在尝试理解如何将Haskell中的函数转换为点无关表示法。我看到了这个例子,但它比我想要的更加复杂。我感觉我理解了它背后的逻辑,但当我尝试在代码中执行一些简单的例子时,我遇到了编译错误。我想尝试用点无关风格来编写这个函数: f x = 5 + 8/x,我重新排列为f x = (+) 5 ...

12得票2回答
如何使用Ramda实现点无递归来删除对象中的null值?

我正在学习有关无点函数的知识,并尝试以该风格实现此递归空值移除器。 它能够工作,但不是无点函数: function removeNulls(obj) { return R.ifElse( R.either(R.is(Array), R.is(Object)), R.p...

11得票2回答
实现一个函数来统计列表中每个元素的频率

我试图编写一个程序,可以统计列表中每个元素的频率。 In: "aabbcabb" Out: [("a",3),("b",4),("c",1)] 你可以在以下链接中查看我的代码:http://codepad.org/nyIECIT2 在这段代码中,unique函数的输出将如下所示。...