Sommario:
Definizione - Cosa significa Clojure?
Clojure è un linguaggio di programmazione dinamico che è un dialetto o una variante del linguaggio di programmazione Lisp. È progettato per scopi generici e combina lo sviluppo interattivo e l'accessibilità di un linguaggio di scripting con un'infrastruttura solida ed efficiente utilizzata per la programmazione multithread.
È anche un linguaggio compilato che viene compilato direttamente nel bytecode JVM pur rimanendo completamente dinamico.
Techopedia spiega Clojure
Clojure è stato sviluppato da Rich Hickey come dialetto di Lisp che prende di mira direttamente la Java Virtual Machine (JVM). Per questo motivo, condivide la filosofia del codice come dati e il potente sistema macro di Lisp. È prevalentemente considerato un linguaggio di programmazione funzionale che presenta un insieme di strutture di dati immutabili e persistenti.
Clojure ha anche un sistema di memoria transazionale software quando è richiesto uno stato mutabile e un sistema di agenti reattivi, che assicura che i progetti multithread siano corretti e puliti.
Le caratteristiche di Clojure includono:
- Stretta integrazione Java in cui le applicazioni possono essere facilmente impacchettate e distribuite su JVM e altri server applicazioni
- Le funzioni sono considerate oggetti di prima classe
- Sviluppo dinamico con un ciclo read-eval-print
- Viene data enfasi alla ricorsione e ad altre funzioni di ordine superiore rispetto al looping basato sugli effetti collaterali
- Fornisce strutture di dati immutabili e persistenti come hashmap, elenchi e set
- Il sistema agente, il sistema var dinamico e la memoria transazionale del software consentono la programmazione simultanea
- I metodi multipli consentono l'invio dinamico dei valori o dei tipi di qualsiasi argomento
