Clojure - Predicati
Predicatessono funzioni che valutano una condizione e forniscono un valore vero o falso. Abbiamo visto funzioni predicative negli esempi del capitolo sui numeri. Abbiamo visto funzioni come "anche?" che viene utilizzato per verificare se un numero è pari o no, o "neg?" che viene utilizzato per verificare se un numero è maggiore di zero o meno. Tutte queste funzioni restituiscono un valore vero o falso.
Di seguito è riportato un esempio di predicati in Clojure.
(ns clojure.examples.example
   (:gen-class))
;; This program displays Hello World
(defn Example []
   (def x (even? 0))
   (println x)
   
   (def x (neg? 2))
   (println x)
   
   (def x (odd? 3))
   (println x)
   
   (def x (pos? 3))
   (println x))
(Example) 
    Il programma precedente produce il seguente output.
true
false
true
true 
    Oltre alle normali funzioni dei predicati, Clojure fornisce più funzioni per i predicati. I metodi seguenti sono disponibili per i predicati.
| Sr.No. | Metodi e descrizione | 
|---|---|
| 1 | ogni predatore  Accetta un insieme di predicati e restituisce una funzione 'f' che restituisce true se tutti i suoi predicati che la compongono restituiscono un valore logico vero rispetto a tutti i suoi argomenti, altrimenti restituisce false.  |  
      
| 2 | ogni?  Restituisce vero se il predicato è vero per ogni valore, altrimenti falso.  |  
      
| 3 | alcuni  Restituisce il primo valore vero logico per qualsiasi valore di predicato x nella raccolta di valori.  |  
      
| 4 | nemmeno uno?  Restituisce falso se uno qualsiasi dei predicati dei valori in una raccolta è logicamente vero, altrimenti vero.  |  
      
