相关疑难解决方法(0)

重新定义内置函数

我将如何重新定义内置函数,同时以不同的名称保持对旧函数的引用?

即与SBCL

(unlock-package 'common-lisp)
(defun old+ (a b) ??????
(defun + (a b) (old+ a b))
Run Code Online (Sandbox Code Playgroud)

我正在将代码移植到没有float数据类型的LISP实现.所以我想重新定义数学运算以使用固定整数数学.

我想我可以通过搜索和替换来解决这个问题:)

sbcl common-lisp

5
推荐指数
1
解决办法
1168
查看次数

保存lisp状态

我是lisp的初学者并且有一个问题.当我直接在REPL中编写一些代码(没有任何.lisp文件!)时,如何保存解释器的工作/状态以便下次恢复并继续工作?

(我正在使用ECL)

感谢名单!抱歉我的英语不好;)

lisp dump image common-lisp ecl

4
推荐指数
1
解决办法
751
查看次数

常见的lisp函数/宏别名

对于大量使用的命令,我想在常见的lisp(确切地说是clisp)中设置别名,例如"defun"和"lambda"等,是否可以这样做?

这实际上是这个问题的重复,但我无法评论,并且该解决方案不适用于sbcl和clisp中的defun或lambda

clisp common-lisp

1
推荐指数
1
解决办法
266
查看次数

在Common Lisp中为setf函数定义别名

根据这个问题,可以像这样创建函数的别名:

(defun some-function () ...)
(setf (fdefinition 'sfunc) #'some-function)
Run Code Online (Sandbox Code Playgroud)

但:

(defun some-function () ...)
(defun (setf some-function) () ...)
(setf (fdefinition 'sfunc) #'some-function)

> (setf (sfunc) ...)
; caught STYLE-WARNING:
;   undefined function: (SETF SFUNC)
Run Code Online (Sandbox Code Playgroud)

不为setf函数创建别名.如何为setf函数创建别名?

common-lisp

1
推荐指数
1
解决办法
91
查看次数

标签 统计

common-lisp ×4

clisp ×1

dump ×1

ecl ×1

image ×1

lisp ×1

sbcl ×1