Posted to tcl by kbk at Wed Oct 17 20:06:11 GMT 2012view raw

  1. proc inNS {namespace command} {
  2. if {$ns eq {}} {
  3. tailcall $command
  4. }
  5. set q [namespace qualifiers $namespace]
  6. if {$q eq {}} {
  7. tailcall namespace eval $namespace $command
  8. }
  9. tailcall inNS $q \
  10. [list namespace eval [namespace tail $namespace] $command]
  11. }
  12. inNS foo::bar::grill {set zot 1}
  13. puts $foo::bar::grill::zot