''Uplevel'' is a command in Tcl that allows a command script to be executed in a scope other than the current innermost scope on the stack. Because the command script may itself call procedures that use the ''uplevel'' command, this has the net effect of transforming the call stack into a call tree. It was originally implemented to permit Tcl procedures to reimplement built-in commands (like ''for'', ''if'' or ''while'') and still have the ability to manipulate local variables. For example, the following Tcl script is a reimplementation of the ''for'' command (omitting exception handling):