Attached is my first contrib submission. M-x slime-undefine-function does not help when you wish to remove a specific method. This contrib adds a new function slime-undefmethod. Invoking M-x slime-undefmethod with the point inside a defmethod definition in your source will find and remove the specific method.
I've posted the code before on usenet, but felt it may be more useful if packaged up with slime. Comments welcome. -- Madhu
From: Madhu enometh@meer.net Date: Mon, 01 Dec 2008 20:54:34 +0530
Attached is my first contrib submission. M-x slime-undefine-function does not help when you wish to remove a specific method. This contrib adds a new function slime-undefmethod. Invoking M-x slime-undefmethod with the point inside a defmethod definition in your source will find and remove the specific method.
Interesting; I've tackled this problem from a different direction. It turns out that swank:undefine-function works for methods if you give it a name of the form "(method gf :after (class1 class2 t))", at least in CMUCL. So I wrote an elisp hack to parse the method prototype. The code is much too messy for prime time, but the curious (those with strong stomachs) can look at rgr-slime-kill-definition in [1].
But I don't mean to steal your thunder; it looks like your solution is much more portable. And I certainly agree that this would be useful.
-- Bob Rogers http://www.rgrjr.com/
[1] https://rgrjr.dyndns.org/svn/rgr-hacks/trunk/rgr-lisp-hacks.el