我怀疑这是风格和/或个人品味的问题,但我想我还是会问.
我一直习惯于定义包:
(defpackage :wibble
(:use :cl :drakma)
(:export :main))
Run Code Online (Sandbox Code Playgroud)
一旦我执行了IN-PACKAGE(在这种情况下是wibble),我就可以使用DRAKMA中的符号:
(http-request ...
Run Code Online (Sandbox Code Playgroud)
然后我最近读到经验丰富的Lisp黑客不愿意:使用但是:
(drakma:http-request ...
Run Code Online (Sandbox Code Playgroud)
只是想知道意见的共识是什么,以及是否有任何利弊(不是那种类型的CONS :))?
干杯,
彼得
不久之前,对于一个基于动物园的小例子,我写了一个基类ANIMAL,一些子类CAT,MOUSE等.一个通用方法FEED采用ANIMAL参数和一些专门用于每个ANIMAL子类型的方法.
在编写了第二和第三类之后,方法对我意识到我一遍又一遍地写同样的东西,并决定编写一个宏DEF-ANIMAL-SUBCLASS,它扩展为PROGN,定义了新的子类和适当的方法.
然后我意识到我刚刚给了我的用户一种定义他们自己的ANIMAL子类型的方法,他们可能觉得这些子类很有用!然而,虽然他们可能只是在正在运行的图像中执行此操作,但我没有办法保存其新的ANIMAL类型,以便在重新启动图像的情况下,将为它们重新创建任何新的ANIMAL类型(没有他们必须重新评估宏).
有这样做的传统方式吗?
这是不应该做的事情?
任何提示都会感激不尽!
干杯,
P