def print { file/stdout file/write } def println { print "\n" print } def when { [] if } def unless { swap when } def 2dip { swap [dip] dip } def keep { over [call] dip } def 2keep { [2dup] dip 2dip } def bi { [keep] dip call } def tri { [[keep] dip keep] dip call } def times { if: over 0 = [drop drop] [swap over >r >r call r> 1 - r> times]; } def while { swap dup bury >r >r if: call dup [r> dup >r call r> r> swap while] [drop r> drop r> drop]; }