在一个Haskell项目中,我给出了调试,代码中有map
只有一个参数 - 一个列表 - 被传递。在Haskell中,当您只将它传递给列表时,map函数意味着什么?
例如
printReports :: [Report] -> IO()
printReports = putStrLn . unlines . map show
和
printRuns' :: [Run] -> IO()
printRuns' = putStrLn . unlines . map showRecipes'
是什么map
平均/做到在这种情况下?
http://www.haskell.org/haskellwiki/Partial_application – 2013-02-14 16:50:57
此外,应用的参数是一个函数,而不是一个列表。 'map'是与[(a - > b) - >([a] - > [b])'相同的(a - > b) - > [a] - > [b]''。 – 2013-02-14 16:51:19
你可以阅读'f。 G 。 h“作为”管道“,它接收数据并通过'h',然后'g',然后'f'传递数据。 'map show'是管道中的一个函数(它需要一个列表并将列表中的每个元素转换为一个流) – luqui 2013-02-15 10:02:12