<> <> DIRECTORY PDInterpBasic; PDPrinter: DEFINITIONS = BEGIN maxBlockSize: NAT = 400; DataBlock: TYPE = RECORD [ wordIndex: INT, wordCount: NAT, buffer: ARRAY [0..maxBlockSize) OF CARDINAL ]; Response: TYPE = RECORD [ nextWordIndex: INT, -- indexes the next word the printer would like to see, or -1 if the printer thinks it's done status: PDInterpBasic.Status, currentPage: INT ]; TransmitBlock: PROC [dataBlock: DataBlock] RETURNS [response: Response]; END.