金属丝
描述
一个小的Clojure库,用于将函数显式地连接到声明性计算图中。
这种方法与有一些相似之处。 与数据流编程不同,该库仅提供一种组合纯函数的方法,它不提供数据流变量或尝试解决任何与并发相关的问题。 默认情况下,它不提供任何备注,缓存,并行计算,部分评估或React式编程。
该库的灵感来自使用公式的形式,既可以手写形式也可以通过电子表格给出。 由于多种原因,使用它们可能会很棘手:
所有变量/单元格都具有全局范围
了解家属/家属可能很困难
报告/调试计算中的中间值可能会导致笨拙的代码重组
很难知道如何最好地构建代码
调用相关函数会导致重复计算
大的让块不组成
通过使用声明性图使计算的工作流程显式,它有助于解决许多这些问题:
在图的范围内,图的任何其他部分都可以访问值
依赖关系的流程非常清晰,可以轻松查看
执行图的结果只是所有值的映射,这有助于报告和调试中间值
编写为图的图可