2013-05-07 11 views
6

Mi chiedo solo se avrebbe senso implementare Clojure sul motore Javascript di Googles V8. Non utilizzo mai l'interoperabilità Java. Sto anche imparando ClojureScript. Quindi ho visto il vantaggio di avere il clojure in esecuzione sul motore V8.Implementazione del Clojure sulla parte superiore del motore V8

Qualche idea su questo? Qualcuno sta facendo questo? Quanto sarebbe difficile?

risposta

18

ClojureScript può già essere eseguito su V8 ​​al di fuori del browser ed è stato in grado di farlo sin dall'inizio. In particolare, la suite di test e la suite benchmark vengono eseguite in V8 se il percorso alla directory V8 viene fornito agli script del runner (tramite una variabile di ambiente); oltre a V8, SpiderMonkey e JavaScriptCore vengono utilizzati in questo modo.

Node.js aggiunge una libreria standard completa a V8 ed è stata una destinazione di compilazione valida per ClojureScript dalla versione iniziale. Per quanto riguarda lo stato dell'arte, il riferimento di JohnJ alla presentazione di Bodil è buono (vedi anche i progetti di Bodil come cljs-noderepl e Dog Fort).

Ora, ClojureScript non ha alcune funzionalità di Clojure, in particolare l'accesso al runtime del compilatore, ma c'è il a fork con il compilatore portato su ClojureScript. Una versione ClojureScript self-hosted è probabilmente una questione di tempo.

+0

Freddo. Grazie! Ma per il momento hai ancora bisogno di avviare Java per compilarlo ecc. Speravo in un modo in cui potessi semplicemente usare V8/NodeJS. – Jonovono