0

我想写一些由文件指向FOOBAR指向的数据结构,并将数据结构读回到符号中FOOBAR当我开始一个新的 Common Lisp 会话时。

它似乎*PRINT-READABLY*允许以一种可以读回的方式READ打印对象,并且我可以更改对象的打印方式(defmethod print-object ...)。由于应该以可接受的方式打印对象READ,因此我不必定义任何进一步的方法来重新读取对象。

但是有没有办法将每个写入的数据结构与其对应的符号联系起来,而不必依赖于数据结构的写入和读取顺序?

4

1 回答 1

3

如果我理解正确,您可以将值和相关符号成对存储在文件中,如下所示:

(x . (1 2 3 4))
(y . (6 7 8 1))

当你解析它时,使用这样的东西:

(let ((pair (read))
  (set (car pair) (cdr pair)))
于 2015-05-25T03:35:05.583 回答