Загрузить файл с относительным путем - PullRequest
0 голосов
/ 11 января 2020

С помощью chezscheme для загрузки файлов в текущем каталоге all-codes

(load "ch4-mceval.scm")

Однако, если смените каталог на parent-dir и попробуйте:

(load "all-codes/ch4-mceval.scm")

Исключение при загрузке: ошибка для всех кодов / ch4-mceval.scm: нет такого файла или каталога:

Мой каталог отображается как

$ tree -L 2                                                                   
.                                                                             
├── 00.elisp-SICP.org                                                         
├── 00.preface.org                                                                                            
├── 01.building-abstrations-with-procedures.org                               
├── 02.building-abstrations-with-data.org
├── 03.modularity-objects-and-states.org
├── 04.metalinguistic-abstration.org
├── 05.computing-with-register-machines.org
├── all-codes
│   ├── ch1.scm
│   ├── ch2.scm
│   ├── ch2support.scm
│   ├── ch2tests.scm
│   ├── ch3.scm

Как я могу загрузить коды scm из «всех кодов» с текущим уровнем?

1 Ответ

1 голос
/ 17 января 2020

Кажется, вам следует либо использовать абсолютный путь к файлу, либо использовать source-directories для переопределения набора каталогов, в которых ищутся исходные или объектные файлы, когда файл загружается с помощью load.

Подробнее здесь:

процедура: (путь загрузки) ... Параметр source-directories (раздел 12.5) определяет набор каталогов, в которых ищутся исходные файлы, не идентифицированные абсолютными путями.

(источник http://cisco.github.io/ChezScheme/csug9.5/system.html#. / System: h4 )

и здесь

глобальный параметр: каталоги-источники

... определяет набор каталогов, в которых ищутся исходные или объектные файлы, когда файл загружается через load, load-library, load-program, include, visit или revisit, когда возникает синтаксическая ошибка или когда в интерактивном инспекторе открывается исходный файл.

Значением по умолчанию является список (".") ...

(источник http://cisco.github.io/ChezScheme/csug9.5/system.html#g114)

...