Like `[uplevel] 1` except that it also causes the current scope to terminate, though the command is looked up in the current context first. Consequence of [NRE]. proc fred {} { george } proc george {} { proc george {} { tailcall harry } If I call fred, it's almost as though fred called harry directly, instead of george. Not so? [MS]: yup - all traces of george are gone from the program stack when harry is [MS] yup - all traces of george are gone from the program stack when harry is called. Now, if harry resolves to a different command in george's current namespace than it would under fred's, the harry that is called is george's and not fred's (no diff if the commands are FQ, of course). I think this does pretty much what delegation is supposed to do, right? I think this does pretty much what delegation is supposed to do, right? ---- See also TIP#327. http://tip.tcl.tk/327 ---- !!!!!! %| [Category Command] |% !!!!!!