Я пытаюсь загрузить файл в Lisp из файла в том же каталоге, используя относительный путь.Загрузить файл с относительным путем
Моя файловая структура выглядит следующим образом:
repo/
subdir/
main.lisp
test.lisp
В main.lisp
У меня есть ряд определений функций, и в test.lisp
я хочу протестировать функции.
Я попытался с помощью (load "main.lisp")
и (load "main")
в test.lisp
, а также ряд вариаций на имя пути (то есть, в том числе ./
перед именем файла), но оба раза я получаю следующее сообщение об ошибке (где <filename>
имя файла передается в функция загрузки):
File-error in function LISP::INTERNAL-LOAD: "<filename>" does not exist.
можно ли загрузить main.lisp
используя относительный путь?
Может быть, стоит отметить, что я бегу CMUCL и выполнения кода с использованием SublimeREPL внутри Sublime Text 3.
Будет ли это работать только, если они содержатся в файле загружаемой? Я попытался выполнить это через REPL, но значение '* load-truename *' было 'nil'. Однако он работал, когда я использовал '(load" path-to-test.lisp ")'. – maxdeviant
Да, '* load-truename *' привязан только во время операции 'load'. Точно так же есть '* compile-file-pathname * и' * compile-file-truename * ', которые связаны только во время выполнения' compile-file'. – jlahd