gpt4 book ai didi

printing - 为什么 print-circle 默认为 nil?

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

CLHS 说

An attempt to print a circular structure with *print-circle* set
to nil may lead to looping behavior and failure to terminate.

然后是这个:

Why does this Lisp macro as a whole work, even though each piece doesn't work?

显然,将 *print-circle* 设置为 nil 会导致意外。为什么 *print-circle* 在许多系统上默认设置为 nil?如果我从我的代码开始就将它全局设置为 t 会出现什么问题?

最佳答案

如果将 *print-circle* 设置为 true,则所有输出函数都必须进行循环检查。这意味着它们可能会变慢并占用更多内存。

如果您实际上不使用循环结构(我不是 Lisp 专家,但我倾向于像避免瘟疫一样避免它们),我不会在生产代码中打开循环检查。

关于printing - 为什么 print-circle 默认为 nil?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17429816/

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