Modula-3 uses the concept of readers and writers to perform I/O. A reader is a character input stream, and a writer is a character output stream. The Stdio interface defines a reader stdin for standard input (normally the keyboard) and a writer stdout for standard output (the video display).
The most common I/O routines for readers and writers are packaged in the IO module. More flexible IO routines exist in the Rd, Wr, and Lex modules.