Set


を評価して,この結果を に割り当てる.これ以降,は現れるたびに で置き換えられる.


を評価して,この結果を対応する に割り当てる.

詳細詳細

  • lhs には,パターンを含む任意の式を使用することができる.
  • が典型的なパターンの割当てである.が左辺に置かれているが,右辺には置かれていないことに注意.
  • の形式の割当ては,シンボル f に結合された変換規則を設定する.
  • 特定のシンボルに結合された異なる規則は,通常,与えられた順に置かれる.新たに与える規則が既存の規則より特殊性が高いと判断された場合には,既存のものに先行して置かれる.規則が使用されるときには,この順にテストされる. »
  • 全く同じ lhs を持つ新しい割当ては,既存のものに上書きされる. »
  • ?fDefinition[f]を使ってシンボル f に結合されている割当てを見ることができる.
  • 関数にFlatOrderlessのような属性を割り当てる場合,関数に割当てを実行することに先駆けてこれらの属性を設定しなければならない.
  • Setの属性はHoldFirstである.
  • lhsの形式で与えられる場合,args が評価される. »
  • 特殊な関数の中には,の割当てが,s の代りに自動的に と結合されるものがある.このような関数としては,AttributesDefaultFormatMessageNameMessagesNそしてOptionsがある. »
  • 評価されないシンボル形式で現れるとき,Setは,必要に応じてネストしている変数が改名されるようスコープ構成として取り扱われる. »
  • は,何等かの理由で指定された割当てが実行できない場合でも を返す.
  • $RecursionLimitのような大域変数には,一定の範囲,または値のクラスに限って割当てが可能である.

予備知識
予備知識

  • Setは,式が変数の値になるように評価し割り当てる関数である.式は,短縮形のシンタックス を使って表されることが多い.Setが評価された後で,lhs は,現れるたびに rhs に置換される.lhs の形式によって,結果は関連付けられたOwnValuesDownValues,あるいは特化されたデータ構造のいずれかとして保存される.
  • Setは,rhs に示されるように変換された値に割り当てられる lhs 上のパターンを含むことが多い.例えば,である. は即座に rhs を評価するので,割当てが行われた後でのみ rhs を評価すべき場合には,SetDelayed(短縮形ではと書かれる)を代りに使わなければならない.
  • 与えられた記号に関連付けられた割当ては,Definition[f]を使って見ることができる.個々の割当ては,Unsetを使って記号から削除することができる.ClearおよびClearAllはすべての定義を一度に削除する.
1988年に導入
(1.0)