IMPLEMENTATION MODULE SysIO; (* Thin wrapper over the C shim's external procedures. *) PROCEDURE m2write(VAR s : ARRAY OF CHAR); EXTERNAL; PROCEDURE m2writeln; EXTERNAL; PROCEDURE m2writeint(n : INTEGER); EXTERNAL; PROCEDURE m2writechar(c : CHAR); EXTERNAL; PROCEDURE m2readchar() : CHAR; EXTERNAL; PROCEDURE m2readint() : INTEGER; EXTERNAL; PROCEDURE Write(VAR s : ARRAY OF CHAR); BEGIN m2write(s) END Write; PROCEDURE WriteLn; BEGIN m2writeln END WriteLn; PROCEDURE WriteInt(n : INTEGER); BEGIN m2writeint(n) END WriteInt; PROCEDURE WriteChar(c : CHAR); BEGIN m2writechar(c) END WriteChar; PROCEDURE ReadChar() : CHAR; BEGIN RETURN m2readchar() END ReadChar; PROCEDURE ReadInt() : INTEGER; BEGIN RETURN m2readint() END ReadInt; END SysIO.