2011-12-21[n年前へ]
■Mathematicaから外部Javascriptの出力結果を使う
Mathematica から外部Javascriptが出力する内容を使いたい、という話題がMathematicaのメーリングリストで流れていたので、やってみました。それが下のコードです。メーリングリストへの新規登録ができないようなので、ここに書いてみました。
準備: Mozilla Foundation 謹製のJavascriptインタラクティブシェルである SpiderMonkey http://www.mozilla-japan.org/js/spidermonkey/ をインストール。 (下記コードで読み込む短縮URL先)Javascript サンプル: function times(a, b){ return a * b; } print(2*3); Mathematicaコード: js = Import["http://bit.ly/silGkP", "Table"]; Export["a.js",Prepend[js,"#!/opt/local/bin/js\n"],"Table"]; Run["chmod 755 a.js"]; Run["./a.js > out.txt"]; result = Import["out.txt"] 結果: Out[]= "6" 後はサンプルJavascriptの最末尾にある"print(2*3);"を 使いたい関数などに応じて自動生成してやれば、 Mathematicaから外部Javascript出力を使うことが できる、という具合でしょうか。 処理手順は、Javascriptをダウンロードした上で、 必要構文を追加することでシェルスクリプト化して、 実行結果をファイル経由で受け取る、という具合です。 上記コードはOSX上で動作確認をしていますが、 このJavascriptファイルをシェルスクリプト化する といった辺りの処理は、他環境では不要なのかも しれません。