WSTP
一部のコンピュータシステムを除き,Wolframシステムは,Wolfram Symbolic Transfer Protocol (WSTP)と呼ばれる,高次レベルで外部プログラムとのコミュニケーションを図るための通信規格をサポートしている.WSTPを使うには,特殊なソースコードとWSTPライブラリが組み込まれていなければならない.このどちらも,通常Wolframシステムに標準装備されている.
WSTPを使えば,外部プログラムからWolfram言語を呼び出したり,逆にWolfram言語から外部プログラムを呼び出したりすることが可能になる.なお,WSTPの詳細は「WSTPと外部プログラムの通信」を参照してほしい.WSTPでリンクさせることで,Wolfram言語をあたかも外部プログラムに組み込まれたサブルーチンのように使うこともできる.さらに,自前のユーザインターフェースを備えたフロントエンドを作成し,WSTPを介して,それとWolfram言語カーネルをリンクさせることも可能である.
また,WSTPを使うことで,ユーザが作成した外部プログラムの個々の関数をWolfram言語から呼び出すことも可能になる.これを行うには,「WSTPと外部プログラムの通信」で詳しく説明するが,WSTPテンプレートと呼ばれるファイルをもとに,どうしたらWolfram言語の関数がユーザのプログラムにある関数を呼び出すことができるかを指定する必要がある.WSTPテンプレートファイルを使うことで,ユーザのプログラムに組み込むためのリンク用ソースコードを生成することができる.こうして作られたプログラムを起動すると,自動的に適切なWolfram言語の定義が生成される.そして,Wolfram言語の特定な関数が参照されると,ユーザのプログラムにあるコードが自動的に実行される,という仕組みになっている.
Install["command"] | 外部プログラムを起動し,外部プログラムの関数を呼び出すためのWolfram言語の定義をインストールする |
Uninstall[link] | 外部プログラムとのリンクを停止し,インストールされた定義を消去する |
WSTPを使ってWolfram言語自身を含むさまざまなタイプのプログラムと接続することができる.WSTPライブラリには各種の一般的なプログラミング言語に対応するさまざまなバージョンがある.J/Link システムはWSTPに基づいてWolfram言語とJavaを統合する標準的な方法を提供する.J/Link を使うとどのJavaクラスでも取ることができ,即座にそのメソッドにWolfram言語の関数としてアクセスできるようになる.