Evaluated proc setval {list name args} { if { [set i [lsearch $list $name]] >= 0 } { lreplace $list [+ 1 $i] [+ 1 $i] $args } { lreplace $list end end $name $args } }