Scope
1.1Â Goals
The goals of this part of ISO/IEC 10514 are:
- to provide a rigorous definition of the language Modula-2 and its standard library by providing a mathematical model of both;
- to provide a resolution of differences among interpretations of other descriptions of Modula-2 and its standard library, while endeavouring to preserve investment in existing practice;
- to remove features thought to be redundant, inherently flawed, or inadequate;
- to specify new language and standard library facilities where a need is perceived to exist;
- to maintain the general principles of Modula-2 laid down by its inventor, while allowing for later modernization and standardization.
1.2Â Specifications included in this part of ISO/IEC 10514
This part of ISO/IEC 10514 provides specifications for:
- required symbols for Modula-2 program representation, including comments, literals, and source code directives;
- the lexical structure, the syntactic structure and the semantics of Modula-2 programs, including programs that make use of system modules;
- the interface to and the semantics of standard Modula-2 library modules;
- those separate modules of the standard library that a conforming implementation is required to supply;
- violations of the rules for use of the language, system modules and standard library modules that a conforming implementation is required to detect;
- certain criteria for the size and complexity of programs that a conforming implementation must accept;
- further compliance requirements for implementations, including documentation requirements.
1.3Â Specifications not within the scope of this part of ISO/IEC 10514
This part of ISO/IEC 10514 provides no specifications for:
- the underlying representation of predefined data types (except in the case of packedset types; see 7.1.7.1);
- the method by which implementations are invoked (including identification of the program module and associated definition and implementation modules);
- the method by which compilation modules are stored (including the correspondence between module names and system file names where files are used);
- the method by which implementations accept input (including the encoding of source text and including the number of compilation modules accepted for each invocation);
- performance aspects of implementations, and certain quality aspects not covered by 1.2;
- the effect of executing a program that uses extensions to the language, extensions to system modules or extensions to standard library modules, or that otherwise deviates from this part of ISO/IEC 10514;
- the effect of continuing execution of a program in which an exception has occurred and execution has continued without an exception being raised;
- the meaning of a program that relies on a definition of implementation-dependent values or implementation-dependent behaviour.