我有一个正在增长的功能,并且正在获得一种像下面所示的where模式。如果f = fooed e等于裸e等于baded d ...,这些的正确替代方法是什么?
myFunc:: String -> Options -> String
myFunc someString opts = topStr ++ editedMidStr ++ botStr
where editedMidStr = foo f
f = bar e
e = baz d
d = qux c
... = ...
最佳答案
使用功能组成!
myFunc myString opts = topStr ++ editedMidStr ++ botStr where
editedMidStr = (foo . bar . baz . qux . makeACFromMyString) myString