editor4.mod 523 B

12345678910111213141516171819202122
  1. MODULE editor3;
  2. (* based on the kilo editor building course*)
  3. (* Step 3 *)
  4. (* sing different libreries for the same purpose, somez lowlevel, some higher level *)
  5. IMPORT libc, SYSTEM, FIO;
  6. VAR
  7. c : CHAR;
  8. p : POINTER TO CHAR;
  9. BEGIN
  10. p := SYSTEM.ADR(c);
  11. (* FIO PROCEDURE ReadNBytes (f: File; nBytes: CARDINAL; dest: ADDRESS) : CARDINAL ; *)
  12. (* libc PROCEDURE read (d: INTEGER; buf: ADDRESS; nbytes: CSIZE_T) : [ CSSIZE_T ] ; *)
  13. WHILE libc.read(FIO.StdIn,p,1) = 1 DO
  14. ;
  15. END;
  16. END editor3.