How to | Clear My Definitions
When you set a value to a symbol, that value will be used for the symbol for the entire
Mathematica session. Since symbols no longer in use can introduce unexpected errors when used in new computations, clearing your definitions is very desirable.
Assign values to two symbols (
x and
y) and observe their sum:
| Out[1]= |  |
Use
Clear to clear the definitions for
x and
y:
Observe that
x and
y no longer have values associated with them and are treated as symbols without definitions:
| Out[3]= |  |
This command clears all the definitions made during the current
Mathematica session:
Use
ClearAll to clear not only the values and definitions of symbols but also the attributes and messages associated with them.
Start with a function to output a range from 0 to some positive integer:
Notice that
f returns an error when a list is given as the argument:
| Out[6]= |  |
Now set
f to be
Listable, so that
f maps over lists when lists are given as arguments:
| Out[7]= |  |
Notice that after
f is cleared, the attribute
Listable still remains:
Use
ClearAll to clear attributes and messages as well:
Use
ClearAttributes to clear only the attributes of a function and retain its definition.
Redefine
f and set it to be
Listable as before:
Now use
ClearAttributes and notice that while the definition of
f remains, the
Listable attribute is no longer present:
You can also use
Unset (=.) to clear any values or definitions made to a symbol:
| Out[12]= |  |
Remove will remove a symbol completely until it is referenced again:
Referring to
x will bring it back into the
Mathematica session:
| Out[15]= |  |
In the case of locally defined symbols, which store values set only for a specified portion of a program, definitions are cleared automatically after use. Symbols can be locally defined by using
Block or
Module.