You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In mode compile&run Critcl currently populates the auto_index array with the declared commands, so that the standard unknown can trigger the compilation on first use.
Proposed alternatives:
rkeene : Create Tcl shims which trigger compilation and get replaced with the compilation result.
dgp : Hook into namespace unknown.
Study feasibility of either.
For background, there is some intent and pressure on the core to remove auto_index.
A first thing to do would be to isolate the code doing the registration (if it is not already).
Then it can be replaced with alternate implementations.
Thoughts:
The idea of shims is likely the most portable not depending on any specific version of the core, and its features. I.e. namespace unknown is a recent feature we would have to check for before using it.
The current code is portable across major versions simply because auto_index exists since pretty much the beginning. That breaks should auto_index go away. Plain Tcl procs on the other hand will never go away.
The text was updated successfully, but these errors were encountered:
In mode
compile&run
Critcl currently populates theauto_index
array with the declared commands, so that the standardunknown
can trigger the compilation on first use.Proposed alternatives:
namespace unknown
.Study feasibility of either.
For background, there is some intent and pressure on the core to remove
auto_index
.A first thing to do would be to isolate the code doing the registration (if it is not already).
Then it can be replaced with alternate implementations.
Thoughts:
namespace unknown
is a recent feature we would have to check for before using it.auto_index
exists since pretty much the beginning. That breaks shouldauto_index
go away. Plain Tclproc
s on the other hand will never go away.The text was updated successfully, but these errors were encountered: