Evaluate

Evaluate[expr]

たとえ引数の評価を行わない属性を持つ関数で使用されたときにも,強制的に expr の評価を行う.

詳細

  • Evaluateを使って,組込み関数の属性HoldFirst等を無効にすることができる.
  • Evaluateは関数引数の頭部として直接現れたときに限り,HoldFirst等の属性の機能を上回る.その他の場合は,そのまま保持される. »

例題

すべて開くすべて閉じる

  (1)

Holdの内側を評価する:

スコープ  (1)

Evaluateは,属性HoldAllHoldFirstHoldRestのいずれかを持つ任意のシンボルの引数に使うことができる:

AttributesHoldAllなので,Evaluateを使って x の値の特性を求める:

アプリケーション  (3)

システムシンボルのプロテクトを外して定義を加える:

シンボルを再びプロテクトする:

遅延的定義の右辺の評価を強制する:

式から関数を構築する:

特性と関係  (3)

Evaluateは属性HoldAllCompleteを持つ関数の中では働かない:

Unevaluatedを使って一時的に関数がHoldAllであるかのように扱う:

EvaluateUnevaluatedの内側では働かない:

考えられる問題  (1)

Evaluateは第1レベル,すなわちホールドされた関数のすぐ内側でのみ働く:

Wolfram Research (1991), Evaluate, Wolfram言語関数, https://reference.wolfram.com/language/ref/Evaluate.html.

テキスト

Wolfram Research (1991), Evaluate, Wolfram言語関数, https://reference.wolfram.com/language/ref/Evaluate.html.

CMS

Wolfram Language. 1991. "Evaluate." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Evaluate.html.

APA

Wolfram Language. (1991). Evaluate. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Evaluate.html

BibTeX

@misc{reference.wolfram_2024_evaluate, author="Wolfram Research", title="{Evaluate}", year="1991", howpublished="\url{https://reference.wolfram.com/language/ref/Evaluate.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_evaluate, organization={Wolfram Research}, title={Evaluate}, year={1991}, url={https://reference.wolfram.com/language/ref/Evaluate.html}, note=[Accessed: 22-November-2024 ]}