我正在研究函数式编程,Arrow-kt
即Kotlin
我的用例如下:
我想执行Action
并返回相关的Reaction
两者Action
都有Reaction
关联Side Effects
事件的顺序是
1)。在接受Action
立即触发相关联的Actions Side Effects
2)。执行Action
并获得Reaction
3)。触发Reactions Side Effects
4)。返回Reaction
结果。
请求执行操作时要考虑的其他因素
一个)。当行动从未执行过时;完成整个序列,例如步骤 1 - 4。
乙)。执行时Action
;将序列短路,以使步骤 2 - 4 未完成
C)。完成时Action
;短路步骤 1 - 3 并返回Reaction
结果
上面提到的副作用包括Logging
、Analytics
和User Interface
效果。
我感觉我要求立即触发Action
和Reaction
副作用意味着函数式编程解决方案不适合我的用例
Arrow-kt
我发现的演示文稿和博客描述了如何根据引发的错误条件或使用withEither
来短路序列,并实现相同类型的行为。Option
Some
None
我遇到的困难
一世)。从哪里开始????
ii)。完成四个步骤,如何控制/管理“短路”,以便完成步骤 1 - 4、仅步骤 1 或仅步骤 4
是否可以使用函数式编程实现所需的行为?