【发布时间】:2019-09-19 19:18:49
【问题描述】:
这些不同的功能像这样组合在一起
f1 -> f2 -> f3 -> f4 -> f5
我需要在 f3 周围添加两个新函数 fx 和 fy,如下所示:
f1 -> f2 -> fx -> f3 -> fy -> f4 -> f5
所以我需要对 f3 的参数进行预处理,然后对 f3 的输出进行后处理
这里的函数 fx 进行了更改,fy 将更改恢复回来,但 fy 需要 fx 的其他详细信息才能恢复,例如要知道要恢复到哪些值
问题是函数 fx 需要产生两个输出
first: output that is needed by f3
second: output that is needed by fy
问题: 如何在没有直接连接在一起的函数之间共享依赖关系, 有没有解决这个问题的空间方式/技术?
仅供参考,我使用的是 Java8
【问题讨论】:
-
可以引入fk,即fx -> f3 -> fy
-
使用arrows。我不会用 Java 编程。因此,我不知道是否有任何用于基于箭头的计算的 Java 库。快速的谷歌搜索也没有产生任何结果。但是,自己实现它应该不会太难。如果您用一些具体的代码示例更新您的问题,那么也许我可以帮助您。
标签: functional-programming functional-dependencies functional-java