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" <j...@gnu.org> 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)