MAP - a macro processor for Pascal.

Usage:

map file >outfile [list=listfile]

Options:

>outfile
writes the processed program to "outfile". If this is omitted, the output goes to the terminal.
LIST=listfile
tells where the output is to be written. If omitted, the listing will be written to file "fc*li" if it is in the AFT. If "fc*li" does not exist, the listing will be written to a file "list".

Description:

MAP (MAcro Pascal) is a preprocessor for Pascal written at Purdue University by Douglas Comer. MAP has facilities for macro substitution, conditional compilation, constant expression evaluation, and source file inclusion. The input to MAP is an extended Pascal program; output consists of a listing and valid Pascal source program. The output Pascal program has all extra blanks and comments removed and so is essentially unreadable.

Error messages are written on the terminal and on the listing file. The processed Pascal program is written to standard output, and will normally be redirected where desired.

As with some other language preprocessors, this one has the problem that error messages from the compiler and the run-time package refer to line numbers in the processed output. You must refer to the listing to find how these relate to the original program. Since MAP was written originally for the CDC version of Pascal, it believes it can safely truncate all identifiers to 10 characters.

See Also:

expl map constant
for a discussion of the constant expression handling.
expl map macros
for a discussion of the macro facility.
expl map codeif
for details on the condition compilation.
expl map include
for details about source file inclusion.

References:

[1] D. Comer, "MAP: A Pascal Macro Preprocessor for Large Program Development", Software Practice and Experience, vol 9:3 (March 1979), 203-209.

Copyright © 1996, Thinkage Ltd.