如何以最简单的方式指定此函数?特别是::fn
部分
(s/def ::edges #{0.149 0.150 0.050})
(s/def ::result #{:correct :incorrect})
(s/fdef foo
:args (s/cat :student-response ::edges :authoritative-answer ::edges)
:ret ::result
:fn ? )
基本上,如果经过舍入到十分位的student-response
与经过舍入到十分位的authoritative-answer
匹配,则函数返回:correct
,否则返回:incorrect
。
我选择了会触动舍入边界的值,而不是希望数字的生成过程随机遇到这些边界。