我在一个小项目上运行了 HLint ,它建议我使用&&&。
示例:
>>> cat st.hs
f = (+) 10
g = (+) 1
main = print $ (\x -> (f x, g x)) 5
>>> hlint st.hs
st.hs:4:17: Warning: Use &&&
Found:
\ x -> (f x, g x)
Why not:
f Control.Arrow.&&& g
1 suggestion
我理解\x -> (f x, g x)
是一种模式并且很欣赏这个建议。但是,Control.Arrow.&&&
没有正常的功能而是箭头,所以我不能按照建议使用&&&
。
那么在那种情况下推荐的方式是什么?
&&&
运算符?(arr f) &&& (arr g)
之类的操作,但我甚至不知道如何评估它?