我正在使用emacs,+ slime + sbcl。
通过粘液检查器检查类/对象时,可以提高类层次结构。但是,如何浏览特定类的子类?有史莱姆功能(或另一种方式)吗?
我想构建一个宏,它根据具有根字符串的符号定义多个类和方法(我想这在 lisp ^^ 中并不是一件不寻常的事情)。
虚拟示例:
(defmacro define-my-stuff (term)
会做这样的事情
defclass my-super-term-class
defvar *term-variable*
defun do-term ((a-thing *example-term*))
如何处理不同的 readtable-case 以便代码可以普遍用于四种不同类型的 case (:UPCASE :DOWNCASE :PRESERVE :INVERT)。
我希望能够从源代码中使用这些符号。所以我希望在宏内部创建的符号由 lisp 系统使用的 reader readtable-case 规则构建。
(常规是 :UPCASE 但有些使用 :DOWNCASE 例如)。
我发现做这样的事情的唯一方法是使用READ-FROM-STRING
函数(例如:(从字符串读取(连接“术语”“-变量”))但这也将符号作为副作用实习。
那么我应该如何按照 readtable-case 规则计算一个符号而不实习呢?
在 common-lisp 包中是否有功能?