Ticket #396 (new enhancement)
Support tracing local functions
| Reported by: | gb | Owned by: | gb |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Runtime (threads, GC) | Version: | |
| Keywords: | Cc: |
Description
As noted in http://clozure.com/pipermail/openmcl-devel/2009-January/008812.html, some other implementations provide a way of tracing local functions (at least named local functions defined via FLET/LABELS), as well as a consistent syntax for referring to them.
This could be useful, but there are lots of issues there. We might (for instance) purify x86 functions by ensuring that all of their constants are allocated in static memory (so that the functions could be ignored by the GC). This would only work for functions whose constants are immutable, and a plausible way of tracing local functions (once other issues are resolved) might involve changing the constant reference to an inner function in the containing outer function.
There are likely other issues, and likely solutions to this and those other issues.
