2016-12-15 13 views
0

Итак, я пытаюсь изучить Lisp, и я загрузил GNU CLISP 2.49 на свой ПК с Windows 10. Я уже написал код в файле, и я хочу загрузить его с терминала CLISP с помощью команды (load "example.lisp").Проблемы с загрузкой файлов в clisp

Куда я должен помещать файл, чтобы он мог загружать его, как это, в clisp?

У меня есть clisp, установленный в C:\clisp-2.49.

ответ

3

Вы должны начать с Документами функции load, а в нижней части страницы даст вам ответ:

Переменная CUSTOM:*LOAD-PATHS*. Переменная CUSTOM:*LOAD-PATHS* содержит список каталогов, в которых файлы ищутся - в дополнение к указанному или текущему каталогу - с помощью LOAD, REQUIRE, COMPILE-FILE и LOAD-LOGICAL-PATHNAME-TRANSLATIONS.

Таким образом, вы должны проверить переменную custom:*load-paths* и добавить каталог есть:

(pushnew #p"c:/home/lisp/" custom:*load-paths* :test #'equalp) 

или вы можете запустить clisp в каталог, где источники расположены.

PS. Ты теперь должен мне 1 zorkmid. :-)

+0

Привет, Сэм, может ли этот пользователь использовать 'clisp-2.49-win32-mingw-ming-big.exe' из Sourceforge? Это напоминает мне, посмотрите на это: http://www.kylheku.com/cygnal/ Друзья не позволяют друзьям использовать MingGW. :) – Kaz

2

В дополнение к отличному ответу sds, здесь представлена ​​перспектива Windows.

В среде командной строки на Windows, или Unix, вы бы не столкнуться с этой проблемой, потому что это было бы ясно, что вы находитесь в определенном «текущем рабочем каталоге»:

C:\Users\me\lisp_project> clisp -q 
[1]> (load "example.lisp") 

То есть , загрузка файла с использованием относительного пути будет относиться к этому каталогу. В приведенном выше сценарии ясно, что если файл C:\Users\me\lisp_project\example.lisp, это то, что загружено (если кто-то не переконфигурировал custom:*load-paths*, чтобы не смотреть в текущем рабочем каталоге).

При запуске процесса с использованием графического интерфейса Windows Explorer он все еще имеет текущий рабочий каталог. Если вы запустите процесс, запустив файл .exe, его рабочий каталог - это каталог, в котором находится .exe.

Если вы запускаете исполняемый файл с помощью ярлыка, текущий рабочий каталог определяется свойством ярлыка. Вы можете отредактировать это: щелкните правой кнопкой мыши на ярлыке и измените каталог «Начать в» на все, что захотите.

Другими словами, вы можете сделать ярлык для clisp.exe, поместить его в любую папку, в которой вы работаете, и заставить ее «начать» в этой папке.

Этот подход должен работать для любого переводчика языка, включая те, которые не имеют сложности CLISP custom:*load-paths*.