UpSetDelayed
lhs^:=rhs
assigns rhs to be the delayed value of lhs, and associates the assignment with symbols that occur at level one in lhs.
Examples
open allclose allBasic Examples (1)
Scope (6)
Left-Hand Sides (5)
An expression with a delayed definition is evaluated every time it is used:
Make definitions for special and general cases using immediate and delayed assignments:
The definition can be associated with a symbol appearing as an argument of the left side:
The definition can be associated with the head of an argument of the left side:
If several symbols appear in the left-hand side, upvalues for all of them are defined:
Properties & Relations (6)
^:= defines upvalues in the same way as using a tag does:
A tag defines only one upvalue; ^:= makes definitions for all symbols:
The right side of an immediate definition is evaluated when the definition is made:
The right side of a delayed definition is evaluated each time the definition is used:
Definitions with the same left side overwrite earlier ones:
Definition prints definitions associated with a symbol:
Information prints various information about a symbol, including any definitions:
UpValues returns a list of rules corresponding to any upvalues defined:
Delayed assignment introduces a scope that is not affected by global variables:
Text
Wolfram Research (1988), UpSetDelayed, Wolfram Language function, https://reference.wolfram.com/language/ref/UpSetDelayed.html.
CMS
Wolfram Language. 1988. "UpSetDelayed." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/UpSetDelayed.html.
APA
Wolfram Language. (1988). UpSetDelayed. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/UpSetDelayed.html