TagSetDelayed

f/:lhs:=rhs

rhslhs の遅延型の値として割り当てて,この割当てをシンボル f に関連付ける.

詳細

  • TagSetDelayedは,上向の値,下向きの値,部分値を適切に定義する.
  • f/:lhs:=rhs のシンボル f は,lhs 中に,lhs の頭部,頭部の頭部,lhs の要素の一つ,あるいは要素の一つの頭部として現れなければならない.
  • よく見られる例として f/:h[f[args]]:=rhs がある.
  • ?symbol を使って特定のシンボルに関連付けられたすべての規則を見ることができる.
  • flhs の中に複数回出現する場合,f/:lhs:=rhs は各出現に割当てを関連付ける.
  • TagSetDelayedは,未評価の記号形式内にある場合は,ネスト構造内の変数名が必要に応じて変更されるように,スコーピング構造として扱われる.

例題

すべて開くすべて閉じる

  (1)

スコープ  (7)

左辺  (4)

遅延的定義を持つ式は定義が使われるたびに評価される:

即時的割当てと遅延的割当てとを使って特殊ケースと一般ケースについての定義をする:

左辺の引数としてタグが現れることがある:

左辺の引数の頭部としてタグが現れることがある:

さまざまな種類の値  (3)

それ自身の値については,タグは冗長である:

下向きの値については,タグは冗長である:

タグを使って上向きの値を定義する:

アプリケーション  (1)

モジュール演算を実装する:

特性と関係  (7)

^:=は,タグを使った場合と同じように上向きの値を定義する:

タグは上向きの値1つのみを定義する.^:=はすべての記号を定義する:

即時的定義の右辺は定義が行われたときに評価される:

遅延的定義の右辺は定義が使われるたびに評価される:

同じ左辺を持つ定義は,それまでのものを上書きする:

Definitionは記号に関連した定義を出力する:

Informationは定義を含む記号に関連したさまざまな情報を出力する:

UpValuesは定義された任意の上向きの値に対応する規則のリストを返す:

=.を使って特定の左辺を持つ定義を除去する:

すべての定義を除去する:

遅延的定義は大域変数に影響されないスコープを導入する:

即時的割当てはスコープを導入しない:

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

テキスト

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

CMS

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

APA

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

BibTeX

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

BibLaTeX

@online{reference.wolfram_2024_tagsetdelayed, organization={Wolfram Research}, title={TagSetDelayed}, year={1988}, url={https://reference.wolfram.com/language/ref/TagSetDelayed.html}, note=[Accessed: 25-November-2024 ]}