2016-02-17 20 views

回答

1

documentationload更换说

在支持它(目前BSD,俳句,MacOS X系统,Linux和Solaris平台上,和Windows),可用于负载来加载编译的程序

这意味着你可以实际上加载与load.so文件。替换一个标识符是可能的,简单地说就是set!将它改为不同的值。

如果你想从任意目录动态加载代码,我认为load是你最好的选择。

+0

非常感谢!有效!令人讨厌的是,文档的一部分说的与[另一个]不同(http://api.call-cc.org/doc/scheme/load)。对于那些漫游的人,我首先编译了'lib-1.ss '用'csc -t lib-1.ss'对c进行编译,然后用'gcc -shared lib-1.so -fPIC lib-1.c'编译'.so'文件。加载''时有一个烦人的限制。 so'文件:“编译的文件只能加载一次,后续加载同一文件的尝试不起作用。”但正如你所说,我可以用'set!'来解决这个问题 –

+0

注意到太迟的错字:'gcc -shared -o lib-1.so -fPIC lib-1.c' –

+0

你说的不一致在文档中。 “方案”部分是从R5RS复制的,这就是为什么说这一点。我们必须解决这个问题...... – sjamaan