コード生成

Mathematica からのコード生成には Mathematica 言語で書かれたプログラムを他の言語へ変換することと変換後のプログラムが実行可能になるようにサポートすることが含まれる.Mathematica コンパイラはコードのCコードへの変換システムを提供する.

使い方のひとつとしてWolfram Libraryに順応するCコードを作成することが考えられる.これはCコンパイラを使ってコンパイルし,Mathematica にリンクバックすることができる.CompileCompilationTargetオプションは,"C"に設定されるとこのように働く.これについてはCompilationTargetのチュートリアルでさらに詳しく説明する.

上記とは別の方法として,Mathematica の外部で使用できるCコードを生成することも考えられる.これは Mathematica の外部で実行されるので,コンパイラからの外部呼出しはサポートされない.つまり,Mathematica を実際に必要とするIntegrateNDSolveのような高レベルの Mathematica 関数はサポートされない.一方,コードがコンパイラによって処理できるものなら,Mathematica の外部でも使用できる.これはCコードのサポートを提供するランタイムライブラリによって行われる.

コード生成器を使用する方法のひとつにExportExportStringを呼び出すものがある.以下で Mathematica 関数からCコードフラグメントを作成する.これを共有ライブラリにコンパイルすることができる.

In[6]:=
Click for copyable input
Out[3]=
New to Mathematica? Find your learning path »
Have a question? Ask support »