REQUIRE Object ~day\joop\oop.f CLASS: Stack R 0 BEGIN DUP Num @ < WHILE DUP Data @ + @ R@ = IF RDROP Data @ + -1 EXIT THEN CELL+ REPEAT DROP 0 RDROP ; : :count ( -- u ) Num @ CELL / ; : :free Data @ FREE THROW own :free ; : :drop CELL NEGATE Num +! ; : :2drop 2 CELLS NEGATE Num +! ; : :base ( -- addr) Data @ ; ;CLASS << :reinit << :push << :pop << :top << :search << :count << :drop << :2drop << :base