Wolfram Research製品ご購入サービスとリソース会社概要その他のWolframサイト
Mathematica >

フロントエンドにおけるノートブックコマンドの実行

NotebookWrite[obj, data]等のコマンドを実行すると,データの挿入は実際にはフロントエンドによって行われる.しかし普通はコマンド自体を評価するためと,適切な要求をフロントエンドに送るためにカーネルが必要となる.それでも,コマンドによってはフロントエンドだけで実行できるものもあり,カーネルは必要とされない.
NotebookWrite[obj,data]カーネルが実行するNotebookWrite
FrontEnd`NotebookWrite[obj,data]
フロントエンドが実行するNotebookWrite

カーネルとフロントエンドのコマンドの比較

Mathematica は,コマンドはカーネルで実行されるものか,フロントエンドで実行されるものか,コンテキストで区別する.カーネルのコマンドはSystem`コンテキストにあり,フロントエンドコマンドはFrontEnd`コンテキストにある.
FrontEndExecute[expr]expr をフロントエンドで実行する

式のフロントエンドにおける実行

空のノートブック.
1.gif
カーネルのコマンドでノートブックにデータを書き込む.
カーネルでフロントエンドコマンドを実行しても何も起らない.
上のコマンドをフロントエンドに送ればコマンドは実行される.
ノートブックの複雑な操作を行うプログラムを書く場合は,プログラムは主にカーネルで実行させるしかない.しかし,ボタンのクリックで実行できる単純な操作は,カーネルを起動しなくても,フロントエンドだけで所定のコマンドを実行することができる.