我只想知道我们如何知道哪些函数需要使用括号(),哪些不需要?例如:
replicate 100 (product (map (*3) (zipWith max [1,2,3,4,5] [4,5,6,7,8])))
工作正常。但是
replicate 100 (product (map (*3) (zipWith (max [1,2,3,4,5] [4,5,6,7,8]))))
代码不能正常运行。原因是我在使用zipWith时加了一组括号。在这个小例子中,zipWith和max没有括号,而replicate、product和map有。通常有没有办法知道/弄清楚哪些函数需要括号,哪些不需要呢?
zipWith
应用于 3 个参数;函数max
和 2 个列表。而在后者中,它仅应用于一个参数;即将max
应用于 2 个列表的结果。 - patreplicate 100 . product . map (*3) $ zipWith max [1,2,3,4,5] [4,5,6,7,8]
- pat