gpt4 book ai didi

Practical Common LISP 格式化 %10t 错误

转载 作者:太空宇宙 更新时间:2023-11-03 18:52:52 24 4
gpt4 key购买 nike

这是页面的链接:Chapter 3, Practical: A Simple Database . 本质上,我有一个包含四个要显示的值的列表数据库。这是用

(defun dump-db ()
(dolist (cd *db*)
(format t "~{~a:~10t~a~%~}~%" cd)))

唯一的问题是输出不太正确:

TITLE:  Home
ARTIST: Dixie Chicks
RATING: 9
RIPPED: T
... (Shortened for brevity)

出于某种原因,“Home”没有从第 10 列开始,有人可以告诉我为什么吗?我正在使用 SBCL 运行代码,最新版本。

最佳答案

两件事:

备注:

0] 表示您处于调试循环中。摆脱它。 help 显示命令。

问题:

也许这是 SBCL 的一个错误。您可能想在其邮件列表中讨论它。那会很有用。

我的猜测:

* (dump-db)
^^ <- 2 characters
TITLE: Home
^^^^^^^^ <- 8 characters, 2 less than specified

如果您回到顶层,您会看到 SBCL 提示符是 * - 两个字符长。现在您看到 Home 的第一个缩进短了两个字符。所以 Lisp 打印机认为提示符的两个字符在同一行,然后位置 10 在接下来的八个字符上——比需要的少两个。也许 Lisp 打印机对 REPL 的某种编程方式感到困惑。接下来的几行就可以了。

顺便说一句,LispWorks 或 Clozure CL 不会发生这种情况。

关于Practical Common LISP 格式化 %10t 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15707198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com