我听说大多数lisps都支持将运行程序的图像保存到文件中。guile支持这一点吗?
发布于 2011-02-02 04:36:51
我认为与其他语言的互操作是Guile不可或缺的一部分,因此在解释器图像中有很多状态对于Guile本身是不透明的。我最了解Guile,因为它是gEDA中内置的模式解释器,所以您能想象不仅要保存所有的CONSes,还要保存gschem可能打开的所有X窗口吗?在Guile中进行可靠的操作是不可行的。(我不确定实现将图像保存到文件是否是一个好主意,即使在“有限的”情况下也是如此。)
也就是说,最终你可以保存程序状态,但由于程序边界是如此漏洞百出,文件描述符和内存映射从每个孔中泄漏出来,你很快就会意识到你必须保存整个计算机的状态。不过,这是以“休眠”省电模式的形式完成的!我也意识到,这不是你想要的。
发布于 2010-12-01 17:35:09
Common Lisp的一个实现SBCL可以做到这一点。(另请参阅此short SBCL tutorial)。如果您有兴趣探索其他可以保存和恢复系统状态(包括延续、打开文件描述符或其他)的动态语言,可以查看Squeak。
https://stackoverflow.com/questions/4319224
复制相似问题