Skip to content

Hold

Prevents its argument from being evaluated.

$ wo 'Hold[1 + 2]'
Hold[1 + 2]

Taking a part out of the wrapper lifts it out of the hold, so it evaluates.

$ wo 'Hold[1 + 2][[1]]'
3
$ wo 'First[Hold[1 + 2, 3 + 4]]'
3

Parts that keep the Hold head stay held.

$ wo 'Rest[Hold[1 + 2, 3 + 4]]'
Hold[3 + 4]