The downlevel command (currently available in Eagle only), is used to evaluate a script in the variable context that existed just prior to the previous uplevel command.
Example #1:
proc deepdown {} { lappend a 1 uplevel 1 { lappend a 2 downlevel { lappend a 3 uplevel #0 { lappend a 4 downlevel { lappend a 5 } } } } return $a } deepdown; # returns 1 3 5
Example #2:
proc deepdown2 {} { lappend a [info level]; # 1 uplevel 1 { lappend a [info level]; # 0 downlevel { lappend a [info level]; # 1 uplevel #0 { lappend a [info level]; # 0 downlevel { lappend a [info level]; # 1 } } } } return $a } deepdown2; # returns 1 1 1