
Thanks for the feedback! Thanks for a feedback.
... Sadly, it had to be reverted because ran into SBCL's compiler lock. Perhaps you can come up with a solution?
No. I'm trying to do some SBCL hacking, but I'm (yet) not experienced enough to fix such things. The patch I suggested is extremely simple, it works in SBCL and there is a good chance it would work on other CL implementations too. It is not elegant, but for me it is still better than grep. And I see no extreme difference between my patch showing implementation as "defvar" and Helmut's one, which I guess shows implementation as "defmethod". Anyway there's no explicit statement that actually they are "definterface" and "defimplementation". I admit my solution is essentially uglier, but it works while Helmut's does not. Slightly better thing would be to show the exceprt from docstring together with "defvar" and "defun", so that it would be clear that "defvar" stands for "defimplementation". But I'm not sure I have the resources to implement that :) 2017-12-19 14:56 GMT+03:00, Luís Oliveira <luismbo@gmail.com>:
Hi Budden,
On Tue, Dec 19, 2017 at 11:26 AM, 73budden . <budden73@gmail.com> wrote:
defun is for definterface, defvar is for defimplementation. This works at least in SBCL, I guess it is handy. Patch is attached. This may seem a bit ugly, but SBCL does not suggest a way to extend its definition database with new classes, so I see no good way to go.
Helmut implemented what seemed like an elegant solution to this issue back in 2014: <https://github.com/slime/slime/commit/74ef7010d79fad14db43d6ff989f177a7a8986b5>
Sadly, it had to be reverted because ran into SBCL's compiler lock. <https://github.com/slime/slime/commit/f63fd440f1beeadd155b871f5d9fc8729c2dfc0d>
Perhaps you can come up with a solution? Perhaps there's a way to force compilation of these methods ahead of time? Something else?
-- Luís Oliveira http://kerno.org/~luis/