M2 ISO Libraries (The GNU Modula-2 Compiler)

### 4.4 M2 ISO Libraries ¶

This directory contains the ISO definition modules and some corresponding implementation modules. The definition files: `ChanConsts.def`, `CharClass.def`, `ComplexMath.def`, `ConvStringLong.def`, `ConvStringReal.def`, `ConvTypes.def`, `COROUTINES.def`, `EXCEPTIONS.def`, `GeneralUserExceptions.def`, `IOChan.def`, `IOConsts.def`, `IOLink.def`, `IOLink.def`, `IOResult.def`, `LongComplexMath.def`, `LongConv.def`, `LongIO.def`, `LongMath.def`, `LongStr.def`, `LowLong.def`, `LowReal.def`, `M2EXCEPTION.def`, `Processes.def`, `ProgramArgs.def`, `RawIO.def`, `RealConv.def`, `RealIO.def`, `RealMath.def`, `RealStr.def`, `RndFile.def`, `Semaphores.def`, `SeqFile.def`, `SIOResult.def`, `SLongIO.def`, `SRawIO.def`, `SRealIO.def`, `StdChans.def`, `STextIO.def`, `Storage.def`, `StreamFile.def`, `Strings.def`, `SWholeIO.def`, `SysClock.def`, `SYSTEM.def`, `TERMINATION.def`, `TextIO.def`, `WholeConv.def`, `WholeIO.def` and `WholeStr.def` were defined by the International Standard Information technology - programming languages BS ISO/IEC 10514-1:1996E Part 1: Modula-2, Base Language.

The Copyright to the definition files `ChanConsts.def`, `CharClass.def`, `ComplexMath.def`, `ConvStringLong.def`, `ConvStringReal.def`, `ConvTypes.def`, `COROUTINES.def`, `EXCEPTIONS.def`, `GeneralUserExceptions.def`, `IOChan.def`, `IOConsts.def`, `IOLink.def`, `IOLink.def`, `IOResult.def`, `LongComplexMath.def`, `LongConv.def`, `LongIO.def`, `LongMath.def`, `LongStr.def`, `LowLong.def`, `LowReal.def`, `M2EXCEPTION.def`, `Processes.def`, `ProgramArgs.def`, `RawIO.def`, `RealConv.def`, `RealIO.def`, `RealMath.def`, `RealStr.def`, `RndFile.def`, `Semaphores.def`, `SeqFile.def`, `SIOResult.def`, `SLongIO.def`, `SRawIO.def`, `SRealIO.def`, `StdChans.def`, `STextIO.def`, `Storage.def`, `StreamFile.def`, `Strings.def`, `SWholeIO.def`, `SysClock.def`, `SYSTEM.def`, `TERMINATION.def`, `TextIO.def`, `WholeConv.def`, `WholeIO.def` and `WholeStr.def` belong to ISO/IEC (International Organization for Standardization and International Electrotechnical Commission). The licence allows them to be distributed with the compiler (as described on page 707 of the Information technology - Programming languages Part 1: Modula-2, Base Language. BS ISO/IEC 10514-1:1996).

All implementation modules and `ClientSocket.def`, `LongWholeIO.def`, `M2RTS.def`, `MemStream.def`, `pth.def`, `RandomNumber.def`, `RTdata.def`, `RTentity.def`, `RTfio.def`, `RTio.def`, `ShortComplexMath.def`, `ShortIO.def`, `ShortWholeIO.def`, `SimpleCipher.def`, `SLongWholeIO.def`, `SShortIO.def`, `SShortWholeIO.def`, `StringChan.def` and `wraptime.def` are Copyright of the FSF and are held under the GPLv3 with runtime exceptions.

Under Section 7 of GPL version 3, you are granted additional permissions described in the GCC Runtime Library Exception, version 3.1, as published by the Free Software Foundation.

You should have received a copy of the GNU General Public License and a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see http://www.gnu.org/licenses/.

Notice that GNU Modula-2 contains additional libraries for input/output of `SHORTREAL`, `SHORTCARD`, `SHORTINT`, `LONGCARD`, `LONGINT` data types. It also provides a `RandomNumber`, `SimpleCipher` and `ClientSocket` modules as well as low level modules which allow the IO libraries to coexist with their PIM counterparts.