slime meta-dot in ASDF sources

Robert Goldman rpgoldman at sift.info
Tue Jul 16 00:13:17 UTC 2019


On 15 Jul 2019, at 18:27, Mark H. David wrote:

> How do ASDF developers using emacs with SLIME deal with doing meta-dot 
> (meta-.) on function names in ASDF sources. Out of the box, mostly 
> when I meta-. just goes to one big top-level form that starts like 
> this
>
>   (with-upgradability ()
>     (define-condition invalid-source-registry (invalid-configuration 
> warning)
>
> Thanks for clues,
> -Mark

One answer to that is that I do the following before I start debugging, 
to avoid debugging the big concatenated ASDF file:

```
(defun debug-asdf ()
   (asdf:load-system :uiop :force t)
   (dolist (c (asdf::required-components :asdf/defsystem :keep-component
                                         'asdf:cl-source-file))
     (load (asdf:component-pathname c))))
```

However, that only gets us to the nearest `with-upgradability` macro 
invocation in the real source file, rather than in `build/asdf.lisp`.

I'm not sure how to answer your further question, because I think the 
answer might depend on the implementation you are using.

I think slime outsources to the implementation how to find a function 
definition, but I'm not an expert on SLIME internals.

Allegro's emacs lisp interface had a thing where it would ask the lisp 
environment which *file* held various definitions, and would then search 
for it based on  some secret sauce involving `excl::define-parser` or 
something like that.

I'd have to know more about SLIME to give a better answer.  Maybe 
someone else can chime in?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20190715/59dccb2e/attachment.html>


More information about the asdf-devel mailing list