为什么>> =比concatMap更快,它们应该是同一个东西?

时间:2015-11-06 18:12:25

标签: performance list haskell ghc

昨晚,我正在编写一些娱乐代码,并且在某些时候我用concatMap替换了>>=,并且在我的代码中看到了大约10%的加速。

我认为>>=的{​​{1}}的定义恰好是[],所以我有点困惑。

1 个答案:

答案 0 :(得分:8)

在基础4.8中SELECT * FROM Customers WHERE replace(Country,' ','') LIKE 's%'; 已实施(请参阅here):

(>>=)

xs >>= f = [y | x <- xs, y <- f x] 正在使用更复杂的构建器(源here

concatMap