ときどきシェルスクリプトclojure
に使えたらいいなと思いますが、起動時間が900ms程度では遅すぎます。次に、「 nailgun clojure」のスタートページをグーグルで検索しますが、表示される結果は、vimclojure のような特殊なケースのみです。そんな時、私は時間がないふりをして、より速く起動するウォード言語に目を向けます。awk
では、どうすれnailgun
ば clojure の起動時間を短縮できるのでしょうか?
デビアン
次の操作を 1 回実行します。
apt-get install nailgun # install nailgun
java -server -jar /usr/share/java/nailgun.jar& # run nailgun server
ng-nailgun ng-cp /usr/share/java/clojure-1.4.jar # add clj to classpath
サーバーが実行および構成されたので、その上で clojure スクリプトを実行できます。
ng-nailgun clojure.main path/to/myscript.clj
私の場合、実際のスクリプトの起動時間は、nailgun を使用しない場合の 900 ミリ秒と比較して、80 ミリ秒に短縮されました。
実際のスクリプトをより便利に実行するには、次の行を含む実行可能ファイルを作成ng-clojure
し、パスのどこかに配置します。
ng-nailgun clojure.main "$@"
clojure shell scriptで、これを最初の行として追加します。
#!/usr/bin/env ng-clojure
次に、clojure シェル スクリプトを実行可能にして、次のように実行します。
path/to/myscript.clj
OSX
brew install nailgun
ng-server
ng ng-cp ~/.m2/repository/org/clojure/clojure/1.5.1/clojure-1.5.1.jar
次に、上記のようにスクリプトを実行します。
更新: しばらく使ってみたところ、問題なく動作しているようには見えません。ときどき、nailgun なしで実行しているときには発生しないランダムなエラーが発生することがあります。また、ときどき、nailgun JVM が時間の経過とともにすべてのメモリを消費し、最終的にシステムをディスクにスワップさせるメモリ リークがあるようです。これはまだメモリ プロファイリングされていませんが、このヘッズアップを追加したいと考えていました。