对不起,这可能是一个非常奇怪的问题。我在Haskell中的所有经验都是编写通常以递归形式进行进展的函数(每次迭代一些数据元素会减少)。但是,我有一组函数,每个函数都对一些数据进行处理,我希望我的调用方法包含每个阶段,例如:
(伪代码)
myFunc1 :: Something1 -> Something2
execute myFunc1 Something1
.
execute myFunc2
.
execute myFunc3
.
execute myFunc4
.
return Something2
但我不确定这是否可能?我是否只需要像下面这样添加一些荒谬的东西:
myFunc4(myFunc3(myFunc2(MyFunc1(Something1))))
?编辑:上面的代码行肯定是不正确的!
myFunc4 . myFunc3 . myFunc2 . myFunc1 $ Something1
。 - luqui(.)
,myFunc4 . myFunc3 . myFunc2 . myFunc1 $ Something1
。我真是个打字太慢的人! - Daniel Fischerlet
结合if
-then
-else
,或定义一个自定义组合器。或将条件逻辑放在函数内部。 - Fred Foo