Clojure è destinato a diversi back-end. Si tratta di un effetto collaterale Clojure che è un linguaggio ospitato progettato con lo philosophy di che abbraccia l'host. Ad esempio, non sarà mai l'obiettivo, per esempio, di rendere lo stesso codice scritto per Clojure sulla JVM non modificato, ancora una volta, ad esempio, il CLR. Quantità consistenti di codice sono comuni tra Clojure per JVM e ClojureScript, che è un bel bonus.
è attualmente stabile per:
- JVM
- JavaScript/ECMAScript
Generalmente stabile per:
e so di sperimentale costruisce per:
- Python
- C
- Scheme
- IOS (via Scheme)
più bersagli vengono visualizzati come interesse e il tempo si intersecano. Se desideri fornire un'implementazione per il tuo Lisp preferito, le patch sono benvenute! È consigliabile basare la propria implementazione sul compilatore ClojureScript poiché esemplifica al meglio i metodi di sviluppo previsti per il compilatore.
fonte
2013-08-14 00:24:47
Più lento in fase di esecuzione o più lento all'avvio? La velocità di runtime dovrebbe essere paragonabile, sebbene il tempo di avvio sia un problema noto. – noisesmith
Quale Clojure stai correndo? Forse puoi modificare un esempio di qualcosa che è più veloce in SBCL rispetto a Clojure? – Sylwester
Per un insieme diversificato di piccoli programmi, SBCL funziona meglio con Clojure sugli altri, a determinate condizioni: vedere [benchmark game] (http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang = clojure & lang2 = SBCL & data = u64q). Personalmente penso che SBCL sia un'implementazione incredibile. Più veloce di qualsiasi altro Common Lisp per la mia applicazione principale. Non ho provato a portarlo su Clojure. Non posso incolpare nessuno per non apprezzare le stranezze sintattiche di CL. – Mars