Clojure

Autore: Eugene Taylor
Data Della Creazione: 10 Agosto 2021
Data Di Aggiornamento: 20 Giugno 2024
Anonim
Clojure in a nutshell by James Trunk
Video: Clojure in a nutshell by James Trunk

Contenuto

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.

Un'introduzione a Microsoft Azure e Microsoft Cloud | In questa guida imparerai cos'è il cloud computing e in che modo Microsoft Azure può aiutarti a migrare ed eseguire la tua azienda dal cloud.

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 agente reattivo, 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 di lettura-valutazione
  • 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