根据调用为函数生成 clojure 规范

Generate clojure spec for functions based on calls

是否可以generate/infer基于函数调用规范的 clojure 规范:

假设我有一个函数 foo,我已经为它编写了一个规范,在 foo 中我调用了另一个函数 bar(),它接受 foo 的一些输入(已经有规范),所以我的问题是可能 infer/generate 酒吧的规格?任何现有的库吗?

谢谢

https://github.com/stathissideris/spec-provider,您可以使用它来推断柱输出的规格。

我正在使用它来(在管道中)将推断的规范可视化为形状(在 java applet 中借助 quil)及其与前一步相比的每个步骤输出之间的差异(在 emacs 缓冲区中)在 https://vimeo.com/240254456.

好的,看起来 Clojure typed 有我一直在寻找的东西,因为我有 foo 的规范,我可以生成测试,然后推断其他函数的规范和类型注释。因为 clojure 是动态语言,所以它的实用性已经指定了入口点函数,我们可以从这些函数中推断出子函数规格,并检查代码库中的一致性(函数在代码中随处调用正确的参数)

https://github.com/typedclojure/core.typed

希望这对其他人有帮助