GNU Guile启用--r7rs选项为何无法识别vector->string?
GNU Guile中
vector->string在R7RS模式下未绑定的问题解析 - 首先明确:
vector->string确实是R7RS Small标准定义的函数,但Guile在R7RS模式下遵循严格的模块系统,默认不会自动导入所有核心模块。 - 问题原因:
vector->string属于(scheme base)模块,Guile启动R7RS模式时不会默认加载该模块,因此会提示“Unbound variable: vector->string”。 - 解决方法:在代码开头显式导入
(scheme base)模块即可正常运行:(import (scheme base)) (display (vector->string #(#\H #\i #\!))) ; => "Hi!" - 补充说明:MIT/GNU Scheme默认加载了大部分核心函数,无需手动导入模块,这是两者实现上的差异,并非Guile不支持该函数。
内容的提问来源于stack exchange,提问作者Scooter
相关产品推荐
相关产品推荐

