1.11.5. ГОЛОВНОЙ МОДУЛЬ КОМПИЛЯТОРА Головной модуль компилятора связывает все части компилятора между собой. Предполагается, что имя файла, в котором находится исходная программа, передается компилятору через первый параметр в командной строке. Таким образом, компилятор вызывается следующим образом:
CMP FileName
где FileName - имя файла. Это имя запрашивается с помощью библиотечной функции Arg.**
** File CMP.RF
**
$use DOS;
$use STDIO;
$use CMPPRS;
$use CMPGEN;
$func Compile e.FileName = ;
Main =
<Arg 1> :: e.FileName,
<Compile e.FileName>;
Compile e.FileName =
<Channel> :: s.Chl,
<Open-File s.Chl e.FileName "r">,
<Parse s.Chl> :: t.AProgram,
<Close-Channel s.Chl>,
<Gen-Code t.AProgram> :: t.Code,
<Write-Code t.Code>;