When dBASE Plus compiles a program file, that file is run through the preprocessor before it is actually compiled. The preprocessor is a separate built-in utility that processes the text of the program file to prepare it for compilation. Its duties include

Stripping out comments from the program file

Joins lines separated by the line continuation character

Substituting macro-identifiers and macro-functions with the corresponding replacement text

Including the text of other files in the program file

Conditionally excluding parts of the program file so they are not compiled

The preprocessor generates an intermediate file; this is the file that is compiled by dBASE Plus’ compiler.

While those are the mechanics of the preprocessor, the usage of the preprocessor allows you to

Replace constants and "magic numbers" in your code with easy-to-read and easy-to-change identifiers

Create macro-functions to replace complex expressions with parameters

Use collections of constant identifiers and macro-functions in multiple program files

Maintain separate versions of your programs, for example debug and production versions, in the same program files through conditional compilation

dBASE Plus’ preprocessor is similar to the preprocessor used in the C language. It uses a handful of preprocessor directives to control its activities. All preprocessor directives start with the # character and each one must be on its own, single line in the script file.