Non c'è di che
Comunque lisp è un termine generico, esistono vari dialetti, ad esempio:
- scheme: core minimale, standardizzato, le varie implementazioni possono offrire librerie e estensioni più o meno portabili.
- Common Lisp: standardizzato, 2 namespaces separati (uno per le funzioni, uno per i dati) che aggiungono qualche complicazione, standard molto più vasto, quindi generalmente più portabile, anche se restano vari spazi aperti che dipendono quindi dall'implementazione.
- Racket: ecosistema di linguaggi, totalmente portabile in quanto con unica implementazione, fortemente ispirato a scheme (all'inizio infatti era un'implementazione di scheme), totalmente modulare in quanto si può limitare il linguaggio usato in ogni sezione e farli coesistere in un'applicazione. Può essere usato come una implementazione scheme standard.
- Clojure: dialetto lisp che gira (principalmente) su JVM, offre integrazione con questa permettendo di usare tutte le librerie sviluppate per java. Offre inoltre qualche zuccherio sintattico, strutture dati infinite con lazy-evaluation, e un buon modello di memoria per la parallelizzazione.
- tanti altri, ho citato solo quelli più noti
Quindi prima di prendere una decisione datti un'occhiata attorno!![]()



Rispondi quotando
