Set (=)で値を割り当てたシンボルと,SetDelayed (:=)で定義した関数は,その定義を同じ方法で消去することができる.

関数またはシンボルを定義する

関数fを定義する:

関数またはシンボルの定義を求める

fの定義を求める:

  • Definitionを使って,シンボルまたは関数の定義を得ることもできる.

関数またはシンボルの定義を消去する

fの定義を消去する:

関数fの定義はなくなった:

注釈

関数を再定義する場合には,その前にClearを使うことによって,不要な定義が残っていて,問題が起るという可能性を取り除くことができる.
Setを使って値を割り当てたシンボル(例えば,x=2)については,Unsetを使ってその割当てを消去する(例えば,x=.)ことができる.
Clearによって,定義は消去されるが,シンボルに関連付けられた属性,メッセージあるいはデフォルトは消去されない.シンボルに関連付けられているすべての情報を消去するにはClearAllを使う.
ClearおよびClearAllは,消去されたシンボルをそのまま残す.シンボルを完全に削除したい場合にはRemoveを使う:
シンボル x は,Clearを使った後でも残る:
シンボルを完全に削除する: