Clojure peut-il implémenter des constructions (g f) comme celle de Haskell ? g . f
? J'utilise actuellement des solutions de contournement comme (fn [n] (not (zero? n)))
ce qui est loin d'être aussi agréable :)
Réponses
Trop de publicités?
Brian Carper
Points
40078
Vous pouvez utiliser le raccourci reader-macro de Clojure pour les fonctions anonymes afin de réécrire votre version en moins de frappes.
user=> (#(not (zero? %)) 1)
true
Pour le cas spécifique de la composition not
et une autre fonction, vous pouvez utiliser complement
.
user=> ((complement zero?) 1)
true
Utilisation de not
en combinaison avec when
y if
est suffisamment courante pour que if-not
y when-not
sont des fonctions essentielles.
user=> (if-not (zero? 1) :nonzero :zero)
:nonzero
Michiel Borkent
Points
11503