slime meta-dot in ASDF sources

Mark H. David mhd at yv.org
Fri Jul 19 04:52:53 UTC 2019


Seems a crosspost to SLIME-devel could be in order, right?

----- Original message -----
From: Robert Goldman <rpgoldman at sift.info>
To: "Mark H. David" <mhd at yv.org>
Cc: ASDF-devel <asdf-devel at common-lisp.net>
Subject: Re: slime meta-dot in ASDF sources
Date: Monday, July 15, 2019 5:13 PM

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/20190718/2cb53d3c/attachment.html>


More information about the asdf-devel mailing list