请在 2024 年 Clojure 状态调查! 分享您的想法。

欢迎!请查看 关于 页面了解有关该工作方式的更多信息。

0
test.check
例如

(prop/for-all [x (gen/nat)
               y (gen/choose 0 (dec x))] ;; y 是小于 x 的 nat
  ...)

3 答案

0

评论者:gfredericks

我以前也考虑过这个问题,我相当犹豫,因为如果存在多个绑定,可能需要使用 {{bind}},这意味着旧式使用独立生成器的方式将突然开始变差(由于缩放 {{bind}} 的一般困难)。

尽管如此,我认为与 {{gen/let}} 的一致性有价值。

另一个选择可能是具有 {{bind}} 行为的替代 {{for-all}},虽然我不确定应该叫什么。

0

评论者:gfredericks

对我的早些评论的回应,我认为 TCHECK-133 证明了使用 {{bind}} 可能不是问题。或者至少不是像我之前以为的那么大问题。

0
参考: https://clojure.atlassian.net/browse/TCHECK-85 (由 alex+import 报告)
...