DEFINITION MODULE Storage; FROM SYSTEM IMPORT ADDRESS; PROCEDURE ALLOCATE(VAR a : ADDRESS; size : CARDINAL); (* Allocate an area of the given size and return the address in "a". If no space is available, the calling program is killed. *) PROCEDURE DEALLOCATE(VAR a : ADDRESS; size : CARDINAL); (* Free the area at address "a" with the given size. The area must have been allocated by "ALLOCATE", with the same size. *) PROCEDURE Available(size : CARDINAL) : BOOLEAN; (* Return TRUE if an area with the given size could be allocated. *) END Storage.