6 Compliance
An EULISP processor can conform at either of the two levels
defined under Language Structure in the Introduction. Thus
a level-0 conforming processor must support all the basic
expressions, classes and class operations defined at level-0.
A level-1 conforming processor must support all the basic
expressions, classes, class operations and modules defined at level-0
and at level-1.
The following two statements govern the conformance of a
processor at a given level.
- A conforming processor must correctly process all
programs conforming both to the standard at the specified
level and the implementation-defined features of the
processor.
- A conforming processor should offer a facility to report
the use of an extension which is statically determinable
solely from inspection of a program, without execution. (It
is also considered desirable that a facility to report the use
of an extension which is only determinable dynamically be
offered.)
A level-0 conforming program is one which observes the syntax and
semantics defined for level-0. A level-0 conforming program might
not conform at level-1. A strictly-conforming level-0 program is one
that also conforms at level-1. A level-1 conforming program
observes the syntax and semantics defined for level-1.
In addition, a conforming program at any level must not use any
extensions implemented by a language processor, but it can rely on
implementation-defined features.
The documentation of a conforming processor must include:
- A list of all the implementation-defined definitions or
values.
- A list of all the features of the language standard which
are dependent on the processor and not implemented by
this processor due to non-support of a particular facility,
where such non-support is permitted by the standard.
- A list of all the features of the language implemented
by this processor which are extensions to the standard language.
- A statement of conformity, giving the complete reference
of the language standard with which conformity is claimed,
and, if appropriate, the level of the language supported by
this processor.