English / Japanese
Ruby/Mathematica は MathLink(TM) を介して Mathematica(TM) と双方向通信するための Ruby 拡張ライブラリです。 このライブラリを利用することにより、 Ruby プログラム中で Mathematica をバックグラウンドで動く計算エンジンとして 用いることができます。
Ruby/Mathematica はフリーソフトウエアです。 Ruby と同じように、誰でも改造したり再配布したりしていいです。 ただし、MathLink を配布したり MathLink を static link したライブラリを 配布する際には、事前に Wolfram Research, Inc. に許可をもらわなければ いけません。 配布している現在のバージョンにはこれらは含まれてません。 それから、 MathLink License Agreement にも従う必要があります。 なんにせよ、できれば、今のバージョンよりも良いものにして僕に教えて下さい。
現在の最新版は 0.0.3 です。
古いバージョンも残しておきます。
現在 DEC UNIX alpha station と ruby ver. 1.6.4 と Mathematica 4.1 でテストしています。ソースしかついていないので C コンパイラが必要です。 協力者を募集しています。 (僕も Windows ユーザなのでできあがったら嬉しいです) 現在の内部実装では UNIX に依存している部分がありますので、 移植を試す人は注意して下さい。
牧野さんから、MacOSX で動くとの報告をもらいました。 また MacOSX でのインストールにおいて、変更しなければいけないことも 教わりました。今のインストールスクリプトだと、簡単にはインストールできな いみたいですが、次の変更で対応しようと思います。 version 0.0.3 では、まだ対応していません。すみません。。。
おもに 2 つの変更がなされました:
Unix でない環境の人がインストールするための手助けのための手引き:
Ruby/Mathematica は MathLink のラッパーを含んだライブラリです。
ver. 0.0.1a では Ruby/Mathematica は 2 つのモジュールと 2 つのクラスからなります。
Mathematica:: # module Mathematica
MathLink:: # submodule MathLink
MathLink # class MathLink
Mathematica # class Mathematica
Mathematica モジュールは名前空間の解決のために用意された Ruby/Mathematica のための抽象ライブラリです。
Mathematica クラスは MathLink の知識なしに Mathematica を使って 計算させるためのインターフェースの実装がなされています。 現在の実装は実験的なため、将来のバージョンにおいて互換性が失われるような 改変が行なわれるかもしれないので注意して下さい。
MathLink クラスは MathLink C ライブラリのラッパーです。 まだ全部の関数を実装してませんが、 Ruby プログラムから Mathematica カーネルに命令を渡す最低限の方法は用意しました。 MathLink モジュールは mathlink.h が定義した定数などを保持しています。
こんなライブラリと共同で仕事ができるようになったらいいなあ:
優先度の高い順に並べました:
協力者大募集。もしくは勝手に、もっといいのを作ってくれる人歓迎。
Windows への移植作業開始。 手元のノートパソコンで拡張ライブラリが作成できるようになりました。 12/13現在のスクリーンショット(39K)
特に以下の方々に助けていただきました。とても感謝します。 これからもよろしくお願い致します。順不同です。
Mathematica Technical Support の George Kambouroglou さん、 /. で紹介して下さった kazekiri さん、 MacOSX へのインストールを試し、変更点などを教えて下さった牧野克紀さん。
また、ruby-list, ruby-math ML および IRC の #Ruby:*.jp の皆様に 助けられています。
Mathematica と MathLink は Wolfram Research, Inc の登録商標です。
Last modified: "Wed Sep 18 14:03:52 2002"
池上 大介 IKEGAMI Daisuke ikegami@madscientist.jp