Program Execution

A program in Refal Plus may consist of several modules, one of which must export the function Main. The execution of the program amounts to evaluating the call to the function Main.

The function Main is said to be the main function of the program, and must have the following declaration:
$func Main = e;

If a function with the name Main is declared in some other way, but, nevertheless, is exported by a module, this situation is considered to be an error.

The execution of the Refal program amounts to evaluating the call to the function Main, the argument of the call being empty:
    <Main >
The module that contains the definition of the main function is permitted to have no interface part, in which case the Refal Plus compiler assumes the module's interface to consist of the single function declaration:
$func Main = e;