在 Common Lisp 中,如何以可移植的方式检查对象的类型
我想定义一个专门处理具有无符号字节 8 元素的数组类型对象的方法。在 sbcl 中,当您 (make-array x :element-type '(unsigned-byte 8)) 时,对象类由…
更改列表的第 n 个元素
我想更改列表的第 n 个元素并返回一个新列表。 我想到了三个相当不优雅的解决方案: (defun set-nth1 (list n value) (let ((list2 (copy-seq list)))…
如何使用子列表对列表进行排序(Common Lisp)
如何对包含子列表的列表进行排序? (setq list '((0) (1) (2) (0 1 5) (0 1 3) (0 1 5) (0 3 0) (0) (1) (2 7 19) (0 0 3 0))) restricting the sort…
Clojure 与其他 Lisp 对比
我的问题的目的不是要引发一场口水战,而是要确定每种语言在什么情况下是“完成这项工作的最佳工具”。 我读过几本关于 Clojure 的书(Programming Cl…
在宏内部,我可以将 ,var 计算为空白/无吗?
感谢之前对 common 的回答lisp:宏如何使用以编程方式生成的名称定义其他方法/宏? 我有一个定义辅助函数的宏(实际上我有一个宏,我最喜欢的 lisp-ne…
Common Lisp 的静态代码分析工具?
我正忙着学习 Common Lisp,&我正在寻找一个静态代码分析工具,它将帮助我开发更好的样式和代码。避免陷入常见陷阱。 我找到了 Lisp Critic 我认为…
元组解包与 Python 类似,但在 Common Lisp 中
有没有一种方法可以将列表的值分配给 Common Lisp 中的符号列表,类似于将元组的值分配给 Python 中的变量? x, y, z = (1, 2, 3) 类似于 (setq '(n p…
在 Paul Graham 的 ANSI Common Lisp 中编写示例
谁能解释一下 Paul Graham 的 ANSI Common Lisp 第 110 页中的示例吗? 该示例尝试解释使用 &rest 和 lambda 来创建函数式编程工具。其中之一是组…
如何定义 swank 服务器应该监听的地址?
启动 swank 服务器时没有设置要绑定的地址的参数: * (describe 'swank:create-server) => ... Lambda-list: (&KEY (PORT DEFAULT-SERVER-PORT) …
根据值从 plist 打印键?
如何根据给定值迭代并打印 plist 的键? 示例: plist (defun my-list() (list :a "hi" :b "no" :c "go")) from that list i want to iterate and p…
“应用” 和 “应用” 和有什么不一样?和“mapcar”在 Lisp 中
(defun describe-paths (location edges) (apply #'append (mapcar #'describe-path (cdr (assoc location edges))))) …