第一次编译时,我犯了一个错误,忘记在defgeneric中指定关键字参数。现在,我真的不想重新启动SLIME,只为了重新定义这个defgeneric来包含更多的参数。有办法“取消”它吗?
哦,对不起,没关系,删除了为该泛型定义的所有方法之后,SBCL重新定义了它,所以现在一切都好了:
(remove-method #'some-generic
(find-method #'some-generic '() (list of method types)))为了子孙后代。
发布于 2013-07-29 11:10:59
见fmakunbound。
(fmakunbound 'some-generic)发布于 2013-07-29 10:27:51
另一种可能是使用附加参数编译一个或多个方法,然后在Common Lisp实现“抱怨”未知参数之后,选择重新启动,它更新泛型函数中可用的参数。
https://stackoverflow.com/questions/17921253
复制相似问题