[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Geiser-users] geiser-xref-callers does not seem to work
From: |
Jose A. Ortega Ruiz |
Subject: |
Re: [Geiser-users] geiser-xref-callers does not seem to work |
Date: |
Mon, 29 Jan 2018 18:52:12 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.91 (gnu/linux) |
On Mon, Jan 29 2018, Andy Wingo wrote:
> Hi!
>
> Great to hear from you jao :)
likewise :)
> On Sat 27 Jan 2018 17:41, "Jose A. Ortega Ruiz" <address@hidden> writes:
>
>> hmmm, i was investigating this. the cause geiser fails is that, in the
>> process of looking for other things, it's not able to find
>> `program-arities', exported by (system vm program). i am not sure why:
>
> Weird. Apologies for this, the function just doesn't exist. While
> program-arity exists and calls it, program-arity itself isn't called. I
> think this is detritus of refactoring :(
>
> The facility that Guile uses now for arities is find-program-arity from
> (system vm debug). It takes an address as an argument. Pass
> (program-code prog) if you know you have a program. The issue is that
> with Guile 2.2 there is code that doesn't necessarily have a
> corresponding program object. For example a function defined in a local
> context whose callers can be enumerated by the compiler can be called by
> label instead of by value, and in that case the "closure" of the
> function can be specialized to be e.g. a vector instead of a closure
> object. So while you always have an address, you don't always have a
> program object.
makes sense, i think i can work from there.
> Relatedly, you ask about program-module. This one is sadly no longer
> available. I suspect it is not coming back either :/ I think you have
> to fall back on mapping procedures to files, and files to modules.
i've figured out how to find the filename for a procedure, but i'm
missing what is probably the easier part: give the latter, how do i get
hold of the module object?
> You might find a look to (system vm debug) to be useful for Geiser
> purposes. Note also that the interface to local variables and stack
> frames changed slightly too; see (system vm frame).
yes, i'm reviewing all this. i suspect some other geiser functionality
might have been affected by all this. thanks for the update!
cheers,
jao
--
A ship in port is safe; but that is not what ships are built
for. -Grace Hopper (1906-1992)