Среда программирования на AutoLISP в графической системе AutoCAD (Справочник), страница 16

При использовании компилятора можно свободно смешивать скомпилированные и интерпретируемые программы на AutoLISP, за исключением шифровых программ. При использовании функции LOAD необходимо либо задавать полное имя файла с соответствующим расширением двоичного файла (.B12- для стандартного  или .В14- для  расширенного AutoLISP),  либо сначала переименовать файлы, давая им расширение .LSP.

Стандартная  среда  программирования  состоит  из двух файлов ACAD.OVL и  EXTLISP.EXE.  Базовый  интерпритатор AutoLISP (ACAD.OVL) работает по умолчанию при вызове AutoCAD, а расширенный  (EXTLISP.EXE) должен  быть запущен  перед  запуском AutoCAD . При этом AutoCAD должен  быть сконфигурирован для работы  со  стандартным  или  расширенным AutoLISP.  Для  русскоязычной  и англоязычной  версий  оверлеи  разные и не совместимы  друг с другом. Для  выгрузки  расширенного AutoLISP используется  специальная задача  REMLISP.EXE.

Для AutoCAD 386  и  AutoCAD R.11  стандартная среда  включает один файл ACADL.EXP, который вызывается автоматически.

Среда системы программирования AutoLISP Compiler состоит  из двух частей – собственного компилятора и различных вариантов оверлейных  файлов  для AutoCAD.

Собственно компилятор состоит из двух файлов ACOMP.EXE и ACOMP.INI и может использоваться  для работы  как с англоязычной, так и русскоязычной  версией AutoCAD.

Исполняющая система состоит из оверлеев  ACAD.OVL, ACADL.NDB  (без отладчика)  и   EXTLISP.EXE. Первые два  файла  заменяют  стандартный оверлей  AutoCAD  ACADL.OVL, последний  заменяет Расширенный AutoLISP. Для  русскоязычной и англоязычной   версий  оверлеи разные и не совместимы друг с другом.

Пользователь должен четко отдавать себе  отчет в том, в какой среде  AutoLISP он  работает – обычной  или  расширенной,  поддерживающей компилятор или нет, с отладчиком или без него.

5.2. Системные  переменные

При работе  в среде  программирования  AutoLISP   испоользуются  следующие   системные  переменные   MS DOS:

LISPHEAR=<размер>

Переменная  задает  размер хипа в байтах (по умолчанию 40000 байтов).

LISPSTASC=<размер>

Переменная   задает размр стекла в байтах (по умолчанию  3000 байтов). Требования по памяти к  LISPTACK при работе с базовым AutoLISP  компилятором  значительно снижены по сравнению со стандартным. Обычно достаточно  2000 байтов для  полностью скомпилированных  программ.  Работа  со смешанными   функциями,  т.е  часть из которых   откомпилированна, а часть – нет,  может  потребовать большего размера стекла.

Суммарная величина  LISPHEAP и LISPTACK  не должна превышать 45000 байтов  для стандартного базового AutoLISP и  43000 байтов для базового AutoLISP компилятора. Нужно не забывать  уменьшать  LISPHEAP,  если необходимо  увеличить LISPTACK,  например,  для возможной  совместной работы со скомпилированными и интерпретируемыми функциями.

LISPSUBR=<размер>                                         (только для среды компилятора)        

Переменная имеет  смысл  только при работе с  компилированными функциями в условиях  виртуальной памяти. Приблизительный размер памяти, занимаемой функцией, можно получить сложением размеров программы и включаемых данных, выдаваемых  компилятором на экран. При работе в среде  компилятора  задание переменных обязательно.

Если  используются  только некомпилированные  функции в среде  вртуальной памяти, то память, отводимая в соответствии со значением  LISPSUBR, будет потрачена зря, уменьшая наличное пространство  нодов. Для избежания этого, можно установить  LISPSUBR  равной  нулю.

LISPXMEM=<начало>                        (только для расширенного AutoLISP)

LISPXMEM=<начало>,<размер>

LISPXMEM=,<размер>

Переменная задает размер оперативной памяти, используемой расширенным AutoLISP.

Атрибут <начало> - начальный адрес, с которого расположена используемая память, <размер>-размер используемой памяти. Значения обычно задаються в килобайтах (можно ив байтах) (XXXXK) в десятичном или шеснадцатеричном виде (с лидирующими символами ‘‘0’’ или “0x”).