[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Guile-commits] GNU Guile branch, wip-rtl, updated. v2.1.0-150-gdd02
Re: [Guile-commits] GNU Guile branch, wip-rtl, updated. v2.1.0-150-gdd02f3b
Thu, 24 Jan 2013 22:42:25 +0100
Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux)
On Thu 24 Jan 2013 21:28, Mark H Weaver <address@hidden> writes:
> "Andy Wingo" <address@hidden> writes:
>> commit dd02f3bd546f6a41d75785e8096b31b78e94167f
>> Author: Andy Wingo <address@hidden>
>> Date: Thu Jan 24 13:20:54 2013 +0100
>> add rtl infrastructure for doing toplevel refs
>> * libguile/vm-engine.c (current-module): New RTL VM instruction.
> How do you anticipate that this 'current-module' instruction will be
When a toplevel function is bound, it captures its current module.
Further toplevel references are made with respect to that module. See
the load-program opcode in the old VM.
In the RTL vm, this value will get cached in a statically allocated
slot instead of a dynamically allocated vector.
At some point in the future, it would be nice to be able to figure out
what the module will be for any given function. Psyntax could make a
module-ref instead of a toplevel-ref in that case. I don't think that
works currently. But until then, this is what we have.