評価の制御

Wolfram言語は通常与えられた任意の式を取り,可能な限り評価する.しかし,Wolfram言語には柔軟なプリミティブの集合が組み込まれており,必要な場合に評価の処理を詳細に制御することができる.

完全な式の評価制御

Hold 式を評価しないまま維持する

HoldForm 式を評価しない形で表示する

Defer 評価しないで表示するが,Wolfram言語入力として与えられた場合は評価する

関数の引数の評価制御

HoldAllHoldFirstHoldRest 関数の引数を未評価で維持する設定をする属性

Evaluate 関数の引数を即座に評価する

Unevaluated 関数の引数を評価しないで渡す

より詳細な制御

ReleaseHold 未評価で維持された構造を開放する

HoldComplete  ▪  HoldPattern  ▪  HoldAllComplete  ▪  SequenceHold  ▪  Update

NHoldAllNHoldFirstNHoldRest 引数の数値的評価を行わないようにする

未評価の式の操作

With 変数の値を評価しないで挿入する

Extract 番号付けされた部分を評価しないで抽出する

KeysValues 評価しないでキーと値を抽出する

ReplaceAll(/.)  ▪  ReplacePart  ▪  Delete  ▪  Position

ToStringToExpression 文字列形式に,あるいは文字列形式から変換する

大域評価制御

$IterationLimit  ▪  $RecursionLimit  ▪  TerminatedEvaluation

リソースの制約

TimeConstrained  ▪  MemoryConstrained

ノートブックにおける評価

Dynamic  ▪  Refresh  ▪  Evaluator

非アクティブ式

Inactivate 式のすべての部分を非アクティブにし,灰色で表示する

Activate 式の部分を再びアクティブにする

Inactive 非アクティブの式のすべてのシンボルに付けるラッパー

IgnoringInactive パターンマッチングにおいて非アクティブラッパーを無視する

DisableFormatting ホールドされた式がフォーマットされないようにする