Property-based generative testing for stateful computations in Clojure