DEFINITION MODULE Stack ; (* MC64 evaluation / activation stack. One element is one 8-byte slot. The stack grows downwards from TopOfMemory towards the heap/arena. *) EXPORT QUALIFIED Push, Pop, PushInt, PopInt, PushCard, PopCard, PushBool, PopBool, PushLongInt, PopLongInt, PushLongCard, PopLongCard, PushReal, PopReal, PushQuad, PopQuad, Reserve ; PROCEDURE Push (v: LONGCARD) ; PROCEDURE Pop () : LONGCARD ; PROCEDURE PushInt (v: INTEGER) ; PROCEDURE PopInt () : INTEGER ; PROCEDURE PushCard (v: CARDINAL) ; PROCEDURE PopCard () : CARDINAL ; PROCEDURE PushBool (v: BOOLEAN) ; PROCEDURE PopBool () : BOOLEAN ; PROCEDURE PushLongInt (v: LONGINT) ; PROCEDURE PopLongInt () : LONGINT ; PROCEDURE PushLongCard (v: LONGCARD) ; PROCEDURE PopLongCard () : LONGCARD ; PROCEDURE PushReal (v: REAL) ; PROCEDURE PopReal () : REAL ; PROCEDURE PushQuad (v: LONGREAL) ; PROCEDURE PopQuad () : LONGREAL ; PROCEDURE Reserve (n: CARDINAL) ; END Stack.