我有一个接受列表和操作并在该列表上执行操作的函数。
-- SUMLIST function
sumList :: Num a => [a1] -> (a1 -> a) -> a
sumList numList oper = sum (map (oper) numList)
当我从 GHCI 提示符调用时,它工作正常:
sumList [1,2,3,4,5] (*3)
gives: 45
但我想在上面写一个包装器并从文件中传递值:{line is SUMLIST [1,2,3,4,5] (*3) }
let x = (splitOn " " line)
print (sumList (read (x!!1) :: [Int]) (x!!2) )
在这里,我可以输入第一个参数,它是列表,但是我应该为第二个参数做什么,这是实际映射 ,有人可以指导我正确的方向吗