gpt4 book ai didi

format - Common Lisp `format` 实现

转载 作者:行者123 更新时间:2023-12-02 08:18:06 27 4
gpt4 key购买 nike

Common Lisp 的 format 是否有一个特别容易阅读的实现?

我找到了 SBCL's version ,但由于 SBCL 以 性能 Common Lisp 实现而著称,我想知道是否有一个更注重清晰度和可读性的实现。

公平地说,SBCL 的版本并不难以阅读,而且我没有看到很多优化,但如果有更多读者友好的我想知道它的版本!

最佳答案

I don't see a lot of optimizations.

他们在别处。只需在 Emacs+Slime 下的 REPL 中输入“格式”并输入 M-. 调出一个缓冲区,其中包含与符号相关的不同位置,包括优化:

###/sbcl-1.3.7/src/code/cmacros.lisp
(DEFINE-COMPILER-MACRO FORMAT)
###/sbcl-1.3.7/src/code/target-format.lisp
(DEFUN FORMAT)
###/sbcl-1.3.7/src/compiler/srctran.lisp
(:DEFTRANSFORM FORMAT (NULL (SB-INT:CONSTANT-ARG STRING) &REST STRING) "optimize")
(:DEFTRANSFORM FORMAT (NULL FUNCTION &REST T) "optimize")
(:DEFTRANSFORM FORMAT ((MEMBER T) FUNCTION &REST T) "optimize")
(:DEFTRANSFORM FORMAT (STREAM FUNCTION &REST T) "optimize")
(:DEFTRANSFORM FORMAT (T SIMPLE-STRING &REST T) "optimize")
(:DEFOPTIMIZER FORMAT SB-C:DERIVE-TYPE)
(:DEFOPTIMIZER FORMAT SB-C:OPTIMIZER)
###/sbcl-1.3.7/src/compiler/fndb.lisp
(DECLAIM FORMAT SB-C:DEFKNOWN)

[...] but if there's a more reader-friendly version I'd like to know about it!

您可以阅读 CLisp 的 version在非官方 github 存储库上在线;或 Clozure CL 的 implementation .另请参阅 ABCL 的 format.lisp ,以及 ECL , ETC。我无法提供指向每个 Common Lisp 实现的链接(有关列表,请参阅 this page)。据我所知,他们都倾向于有很多评论,但是您是否发现一个比另一个更具可读性取决于您。

关于format - Common Lisp `format` 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40013832/

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