我的代码:
map head $ map (splitOn ":") inputlines
工作得很好,输入线是一个列表;但是,此代码不起作用:
map head . (splitOn ":") inputlines
也不
map head . (splitOn ":") $ inputlines
我的想法是head . (splitOn ":")
使它等同于单个函数。然后使用map在列表inputlines
上应用单个函数。但它不起作用,出了什么问题?
答案 0 :(得分:2)
试试这个:
map (head . splitOn ":") inputlines
它会起作用。
如果是map head . (splitOn ":") inputlines
,Haskell会将inputlines
视为部分应用splitOn
的参数。同样适用于map head . (splitOn ":") $ inputlines
,首先评估inputlines
,然后再将其应用于splitOn
。
答案 1 :(得分:0)
它的
map (head . splitOn ":") inputlines