This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.

# Hold

 Hold[expr]maintains expr in an unevaluated form.
• Hold has attribute HoldAll, and performs no operation on its arguments.
• Hold maintains a sequence of unevaluated expressions to which a function can be applied using Apply.
• Even though expr itself is not evaluated, Hold[expr] may still evaluate if expr is of the form , and upvalues for f have been defined. »
Hold an expression to prevent evaluation:
Release the hold:
Hold an expression to prevent evaluation:
 Out[1]=
Release the hold:
 Out[2]=
 Applications   (2)
Find the length of each expression in a held list without evaluation:
Evaluate every sum (only) inside a held expression:
Hold is a container with the attribute HoldAll:
Use Evaluate to force evaluation of an argument of Hold:
Unevaluated inside a held expression is not removed:
Sequence splicing still happens inside Hold:
Use the container HoldComplete to suppress even such transformations:
Upvalues work inside Hold:
They do not work inside HoldComplete:
Substitution works inside Hold:
Insert into a held expression:
ReleaseHold removes one level of Hold:
HoldForm is like Hold, but is normally not shown in the output:
New in 1