Если ваша программа содержит только объявления подпрограмм и переменных, но не имеет команд высшего уровня, то после её запуска не произойдёт ровно ничего (кроме, конечно, проверки синтаксиса и формирования кода IL). Поэтому в вашей программе должна быть хотя бы одна команда высшего уровня, например, вызывающая вашу главную подпрограмму на исполнение (см. 1.1 Пример программы). Возможны программы, в которых нет ничего, кроме исполняемых команд высшего уровня, без каких бы то ни было подпрограмм. Например, вы можете использовать Euphoria как простой калькулятор, записав просто несколько команд print() (или ?) с выражениями в файл, и затем исполняя его.
Как мы уже видели, на высшем уровне вы можете использовать почти любую команду Euphoria, включая циклы for, циклы while, команды if и так далее (но не return). Высший уровень - это уровень вашего главного файла на тех участках его текста, которые не относятся к определению подпрограмм, то есть
* include
* with / without
2.6.1 include (учесть, включить)
Когда вы пишете большую программу, часто бывает удобно разбить её на логически отдельные файлы, используя команды include. Иногда вы захотите повторно использовать уже ранее написанный и проверенный код, свой или другого автора. Вместо копирования такого кода в новую программу вы также можете использовать команды include, чтобы просто сослаться на файл, в котором необходимый вам готовый код уже имеется. Первая форма команды include записывается следующим образом:
include
include graphics.e
include \mylib\myroutines.e
* Любой код, расположенный на высшем уровне включаемого файла, будет исполнен. Любые глобальные (global) имена, которые уже были объявлены и определены в вашем главном файле перед включением, будут видны и во включенном файле. Примечание: Но только те из имён, которые объявлены и определены во включаемом файле с ключевым словом global, будут видны и доступны в той части программы, которая следует за командой include. Если задано абсолютное имя файла
* Каталог, содержащий главный файл, заданный в командной строке интерпретатора, транслятора или биндера (шроудера) ...
Если вы задали на своей машине переменную окружения EUINC, Euphoria будет проверять каждый из каталогов, перечисленных в EUINC (слева направо). Переменная EUINC должна задавать список каталогов, отделённых один от другого точкой с запятой (двоеточием на Linux/FreeBSD), подобно тому, как это делается для переменной PATH. Переменная EUINC может быть добавлена в набор переменных окружения вашей операционной системы Linux/FreeBSD или DOS/Windows. (Через Control Panel/Performance & Maintenance/System/Advanced на XP, или AUTOEXEC.BAT на более старых версиях Windows), то есть,
SET EUINC=C:\EU\MYFILES;C:\EU\WIN32LIB
* Переменная EUINC позволяет вам организовать свою систему библиотек Euphoria в соответствии с потребностями конкретных программных проектов, не забивая многочисленными нестандартными библиотеками официальный каталог euphoria\include.
* И, наконец, если заданный в команде include файл всё ещё не найден, Euphoria проверит каталог euphoria\include. Этот каталог содержит стандартные официальные включаемые файлы (библиотеки) Euphoria. Переменная окружения EUDIR подскажет Euphoria, где искать (и под каким именем вы назначили) главный каталог, содержащий систему Euphoria, на ваших дисках (это может быть, если вы хотите, не euphoria, а eu или RDS_EU, или ещё какой-то каталог, который вам более удобен).
Включаемый файл может в свою очередь также включать другие файлы. Фактически вы можете использовать до 30 последовательных уровней "вложения" включаемых файлов. Включаемый файл обычно имеет расширение .e, но иногда это может быть .ew или .eu (когда файл предназначен именно для платформы Windows или Linux/FreeBSD). Так просто принято, но это не обязательное требование. Если filename (или путь) содержат в имени символы пробела, вы должны заключить filename в двойные кавычки. В других случаях кавычки необязательны. Не забывайте сдваивать косую черту. Например:
include "c:\\program files\\myfile.e"