変数xを参照する,ホールドされた式を定義する:

HoldHoldAllの属性を持つので,ホールドされた式が定義される際にはxは評価されない.したがって,式のボディは大域変数xを参照する.xの値が返されるのは,Holdが解放されたときである:

式が定義される際に,強制的にxを評価させるためには,Withを使う:

こうすると,xの値を変更しても,Holdを解放したときに返される値には影響しない:

注釈

この方法は,HoldAllHoldFirstHoldRestHoldAllCompleteのいずれかの属性を持つ任意の関数に(例えば,Functionそのものにも)適用できる:
ホールドされた引数で,Evaluateを使って変数の値で変数を解くことができるが,引数の最上レベルに使われた場合にのみ可能である.以下を比べてみるとよい: