1
下面的代码工作,但我不得不加载swank无论我是否需要它。我可以懒洋洋地加载swank吗?
(ql:quickload :swank)
(defun swank()
(swank:create-server :port 4005 :donot-close t))
如果我将“(ql:quickload:swank)”移到函数swank中,那么CL将不会找到包swank。
真诚!
下面的代码工作,但我不得不加载swank无论我是否需要它。我可以懒洋洋地加载swank吗?
(ql:quickload :swank)
(defun swank()
(swank:create-server :port 4005 :donot-close t))
如果我将“(ql:quickload:swank)”移到函数swank中,那么CL将不会找到包swank。
真诚!
请记住,阅读是CL的一个单独阶段。首先读取表单,然后执行。当读者阅读DEFUN表单时,它无法识别SWANK:CREATE-SERVER符号,因为在那时QL:QUICKLOAD尚未执行。解决方案是使用INTERN。
(defun swank()
(ql:quickload :swank)
(funcall (intern (string '#:create-server) :swank) :port 4005 :dont-close t))