重新启动是函数 "public interface" 的一部分吗?在普通 Lisp 中?

Are restarts part of a function's "public interface"? in Common Lisp?

我一直在努力通过阅读 Peter Seibel 的 Beyond Exception Handling: Conditions and Restart chapter of Practical Common Lisp, Kent Pitman's Conditional Handling in the Lisp Language Family, as well as some other references.

来理解 Common Lisp 中重新启动和处理程序的正确使用

根据我对重启的理解,它们是函数提供给调用者的选项,以便在遇到某些情况时选择函数的行为。

那么,是否应该将重启视为函数 "public interface" 的一部分,并相应地进行记录?

毕竟,调用者必须知道重新启动以及他们做了什么才能调用它们,对吧?我想,摆脱调用者可能正在调用的重启是一件坏事。

重启以符号命名。如果这样的符号是从包中导出的,我会将其视为 public API 的一部分,否则不会。我希望所有导出的符号都记录在适当的位置(文档字符串)。