Posted to tcl by aspect at Thu Jul 31 02:45:11 GMT 2014view raw
- proc withArray {_array script {ns ""}} {
- upvar 1 $_array a
- set prelude [lmap name [array names a] {
- list upvar 1 a($name) $name
- }]
- set prelude [join $prelude \n]
- set script $prelude\n$script
- if {$ns eq ""} {set ns [list $ns]}
- apply [list {} $script {*}$ns]
- }