IO functions which are used when reading from standard input and writing to standard output. Uses the UTF-8 character encoding under versions of the base library up to 4.1, and whatever the locale specifies under base 4.2 (and later?; only if the locale is supported, see System.IO).
hSetEncoding can be used to change the behaviour of the
functions below if base 4.2 (or later?) is used.