proc plist {varname {channel stdout}} {
upvar 1 $varname var
set len [string length [expr {[llength $var]-1}]]
incr len 2
set i 0
foreach val $var {
puts $channel [format "%s%-*s = %s" \
$varname $len \[$i\] [lindex $var $i]]
incr i
}
}
