【问题标题】:Load file with relative path使用相对路径加载文件
【发布时间】:2020-01-11 14:41:24
【问题描述】:

用chezscheme加载当前目录all-codes内的文件

(load "ch4-mceval.scm")

但是,如果将目录更改为父目录并尝试:

(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 代码?

【问题讨论】:

    标签: scheme chez-scheme


    【解决方案1】:

    看来您应该使用文件的绝对路径或使用source-directories 重新定义通过加载加载文件时搜索源文件或目标文件的目录集。

    更多:

    过程:(加载路径) ...参数source-directories(部分 12.5) 确定搜索的目录集,以查找未由绝对路径名标识的源文件。

    (来源http://cisco.github.io/ChezScheme/csug9.5/system.html#./system:h4

    这里

    全局参数:源目录

    ... 确定搜索源或对象的目录集 通过loadload-libraryload-program 加载文件时的文件 includevisitrevisit,当发生语法错误时,或者当 源文件在交互式检查器中打开。

    默认值为列表(“.”)...

    (来源http://cisco.github.io/ChezScheme/csug9.5/system.html#g114

    【讨论】:

      猜你喜欢
      • 2016-04-23
      • 2023-04-01
      • 2012-02-27
      • 2015-03-30
      • 1970-01-01
      • 1970-01-01
      • 2016-09-13
      • 2011-04-11
      相关资源
      最近更新 更多