2011-07-22 9 views
8

私はClojureScriptを認識しています.JavaScriptにclojureコードをコンパイルする可能性がありますが、逆を行い、javascriptコードのサブセットを取り出してclojureに戻しますか?Javascript to clojure

+0

JavaScriptからLISPコンパイラを見つけることさえできませんが、常に書くことができます。 – Raynos

+0

http://marijnhaverbeke.nl/parse-js/でCommon Lispで書かれたJavaScriptパーサーがあります。 –

+0

はい、可能ですが、努力する価値はありますか? –

答えて

4

はい、実際には意味がありません。

のClojure - > JavaScriptは理にかなっているので:JavaScriptが

  • Webアプリケーションの広いクラスにのみ適しターゲット言語である

    • これは、プログラム全体の最適化のためのGoogle閉鎖コンパイラの有効利用が
    • ことができます
    • Clojureは、マクロ機能と表現力豊かなDSLを定義するための優れたサポートのため、優れた「ソース」言語です。

    Clojureはoターゲット言語のためのdd選択 - JVMプラットフォーム上で実行したい場合は、Javaバイトコードを直接ターゲットにするのがより自然でしょう。

    JavaScriptはClojureにコンパイルするソース言語にとっても奇妙な選択です - Clojureコードが必要な場合は、なぜClojureを直接書くのではないでしょうか?特に、JavaScriptの可能なサブセットを使用すると、Clojureが本当に魅力的なすべての機能(遅延プログラミング、同時実行サポート、マクロメタプログラミング、永続的なデータ構造など)に簡単にアクセスすることはできません。

  • 1

    はい、JavaScriptをClojureに翻訳することは可能です。 Lispファミリの他の方言と同様に、Clojureは他の言語のパーサーやコンパイラの構築にも適しています。

    3

    はい、これ間違いなく可能であり、非常に実行可能なアイデアです。実際にはRhino Javascript compilerを使ってJavascriptをJavaクラスに変換し、ClojureからJavaクラスを呼び出すことができます。あなたはソースコードを取得しませんが、Clojureコードでライブラリを活用することができます。

    3

    JavaScriptからCommon LispへのトランスフライヤーCL-JavaScriptが出回ったばかりです。