Clojure

Spesso imparare un nuovo linguaggio di programmazione è un esperienza interessante, soprattutto se il linguaggio in questione porta con se concetti innovativi. Altrettanto spesso però si è vincolati all’utilizzo di un particolare linguaggio per sviluppare applicazioni commerciali.  Ci si può quindi sentire scoraggiati nello studiarne un linguaggio nuovo, sapendo che non potrà essere sfruttato se non per hobby.

Clojure

Clojure fà eccezione: Clojure è un linguaggio relativamente nuovo (apparso poco più di due anni fa) e introduce una serie di concetti più o meno nuovi il cui apprendimento può essere molto educativo: (e divertente) dati persistenti, paradigma funzionale, gestione automatica dei locking per la concorrenza, metadata, macro e molto altro.

A differenza di altri linguaggi, però, Clojure si basa sulla macchina virtuale Java (JVM), permettendo di eseguire il codice ovunque sia in grado di funzionare la macchina virtuale e soprattutto di sfruttarne le innumerevoli librerie. In Clojure si possono richiamare direttamente le funzioni di Java, ad esempio per creare un interfaccia Swing.

Uno dei grossi problemi del software al giorno d’oggi è quello di gestire la concorrenza, ovvero la presenza di più processi in contemporanea. Molti dei nuovi computer sono infatti multicore e gran parte del software non è in grado di sfruttarli a dovere, costringendo l’esecuzione del codice in un solo processore. Clojure semplifica molto lo sviluppo di applicazioni multithread grazie alla sua unica combinazione di strutture persistenti (i cui dati non si possono modificare), gestione automatica della memoria e paradigma funzionale.

Clojure si può quindi rivelare un serio strumento di sviluppo, al pari dei più blasonati Java e .NET per quanto riguarda le librerie (che eredita, come detto, dal Java), e superiore ad essi per quanto ad esempio la gestione della memoria.

Diffondere Clojure

Invito quindi chiunque sia interessato ad imparare un nuovo linguaggio di programmazione che sia contemporaneamente bello e utile a prendere seriamente in considerazione Clojure.

Pubblicherò (tempo libero permettendo) alcuni post su Clojure, nella speranza possano avvicinare più persone possibile a questo linguaggio. Spero inoltre in questo modo di contribuire a formare un gruppo di utenti in Italia, paese in cui, ahimè, la cultura informatica non è così diffusa come meriterebbe di essere.

Leave a Reply