Assignments

The Wolfram Language's symbolic architecture supports a highly generalized notion of assignment, in which you can specify a transformation for any class of expressions defined by a Wolfram Language pattern. Simple cases correspond to assignments for "variables", "indexed variables", or "structure elements". Other cases define functions or general transformations.

x = v — assign a value ( Set ) < x , y >= — assign multiple values < x , y >= — swap values a [[ i ]]= v — assign a value to a list/array/expression element

x ++ ( Increment ) ▪ ++ x ( PreIncrement ) ▪ x += y ( AddTo ) x -- ( Decrement ) ▪ -- x ( PreDecrement ) ▪ x -= y ( SubtractFrom ) x *= y ( TimesBy ) ▪ x /= y ( DivideBy ) AppendTo , PrependTo — add elements to a list AssociateTo , KeyDropFrom — modify an association x //= f ( ApplyTo ) — x = f [ x ]

Function Definitions

f [ x _]:= body — define a function

Forms of Assignment

lhs = rhs — immediate assignment, with rhs evaluated at the time of assignment lhs := rhs — delayed assignment, with rhs reevaluated every time it is used

f /: lhs = rhs , f /: lhs := rhs — associate assignments with the head f lhs ^= rhs , lhs ^:= rhs — define "upvalues" associated with the leading head in lhs

Clearing Assignments

x =. — unset the value of x ( Unset ) Clear — clear all values associated with a symbol ClearAll ▪ Remove

Information about Assignments

Related Tech Notes

Related Workflow Guides