Wenn die Kombination ''swap over'' in einem Programm häufiger gebraucht wird, kann es aus Gründen der besseren Laufzeit günstiger sein diese Phrase in einem Stück Maschinencode zu fassen. Dafür hat sich der Name ''tuck'' eingebürgert.
: tuck ( w1 w2 – w2 w1 w2 ) \ core-ext “tuck”
swap over ;
Beispiel zur Funktion mit Hilfe des gforth:
11 22 .s
<2> 11 22 ok
tuck .s
<3> 22 11 22 ok
33 44 .s
<5> 22 11 22 33 44 ok
swap over .s
<6> 22 11 22 44 33 44 ok
MaschinenCode-Beispiel aus dem //CamelForth// for the Motorola 6809 (c) 1995 Bradford J. Rodriguez:
CODE TUCK \ x1 x2 -- x2 x1 x2 per stack diagram
S 0, LDX, S 0, STD, HEX 10 # ( X) PSHS, NEXT ;C