比方說,我有值的列表,而我想,直到我得到的最終結果施加的一系列操作:如何在Haskell中運行一系列操作(函數)?
[0, 1, 2]
firstOperation xs = map (+1) xs
secondOperation xs = filter even xs
thirdOperation xs = sum xs
雖然我肯定還有其他更好的方法來解決這個問題,只有一個我目前所知道的是定義調用這些函數嵌套一個內部另一個功能:
runAllOperations xs = thirdOperation (secondOperation (firstOperation xs))
但這兩個醜陋的,並提出以下問題:如果我有10個業務,轉向這段代碼爲maintanance噩夢。
這裏實現某種類型的東西的正確方法是什麼?請記住,我上面給出的例子只是我目前項目所面臨的問題的簡單化。
方式更具可讀性當我看着你的代碼段,我看到你要應用到的輸入轉換。操作在哪裏?提示:我認爲你是在思考哈斯克爾的錯誤方式,因此在沒有意識到的情況下問錯了問題。 – 2010-12-02 22:28:49
我也相信是這樣。不幸的是: – 2010-12-03 08:54:43