Issu d'une formation en Clojure, je suis pris avec le potentiel que ses pré/post conditions offrent comme base pour la conception par contrat:Conception par contrat (s) pour Lisp commun?
;; sqr.clj
(defn sqr [n]
{:pre [(not= 0 n) (number? n)]
:post [(pos? %) (number? %)]}
(* n n))
(sqr 10)
;=> 100
(sqr 0)
; Assertion error
Y at-il une capacité pré/post similaire en Common Lisp et/ou une bibliothèque Design by Contract plus complète disponible dans la nature?
Merci
C'est précisément la bibliothèque que je cherchais. Je vous remercie. – fogus