Evaluated proc _dict_get {dv args} { if {![llength $args]} {return $dv} else {array set dvx $dv; set key [lindex $args 0]; set dv $dvx($key); set args [lrange $args 1 end]; return [eval [linsert $args 0 _dict_get $dv]]; } }