Some of the directives listed below have the optional
parameter ``LUN
''. It is the logical unit number for input/output
streams. If this parameter is omitted, the default value
is used (see appendix ).
All COMIS directives start with a special character "!" to avoid
a conflict with user defined routines.
CALL !HELP
This directive ouputs to terminal short help about directives.
CALL !FILE [lun,] file_name
By default the system input device is the terminal.
This directive sets the input stream to the file file_name
.
The same action can be performed in a user routine by calling:
The system switches to the terminal again when the file
is read or an \excl{
EOF} directive is reached.
CALL !EOF
This directive closes the input file. The next string will be accepted from the terminal.
CALL !LOGFILE [lun,] file_name
The transcript of the interactive session will be collected in the file
file_name
. This file can be used in the FILE
directive
later (to repeat the same dialogue session, for example).
The same action can be performed in a user routine by calling:
CALL !FORTRAN
This directive sets the mode of compilation to ``Fortran''. This mode should be selected avoid syntactic conflicts when you want to process standard Fortran sources with the COMIS compiler. After getting this directive the compiler treats a 'C' character in the first column as a comment mark and every character in the sixth column as a continuation mark (unlike COMIS' free format syntax). This mode is the default.
CALL !COMIS
This directive sets the ``COMIS
'' mode of compilation.
CALL !SHELL command
passes an operand line to the operating system for command processing. Does not cause a break.
CALL !SHOW memory
This directive shows the COMIS internal memory usage.
CALL !SHOW routines
This directive shows a list of routines currently known to COMIS.
CALL !SHOW commons
This directive shows list of common and global blocks currently known to COMIS.
CALL !SHOW names common_name
This directive shows declaration of common or global block
with name common_name
.
CALL !REMOVE cs_routine_name
This directive removes from the internal COMIS memory the comis routine
with name cs_routine_name
.
CALL !CLEAR
This directive clears the internal COMIS memory: it removes all comis routines and all common/global blocks declarations.
CALL !CHECKB
When the directive CHECKB
is given COMIS will check during routines
interpretation that the evaluated result of a array's subscript
expression is greater than or equal to the corresponding lower dimension
bound and does not exceed the corresponding upper dimension bound.
CALL !NOCHECKB
The directive NOCHECKB
causes no check to be made during routines
interpretation (default is CHECKB
).
CALL !PARAM
The directive PARAM
causes the COMIS compiler to insert additional
code to provide all facilities for the treatment of actual arguments.
CALL !NOPARAM
With the directive NOPARAM
you cannot obtain the argument's text
and the Algol like manner of argument processing is not available
(default is NOPARAM
).