 <p><strike>I don't have a tcl with tclx to test with, but</strike> you <strike>probably</strike> need to pass the list variable <em>name</em> to the proc and then use <code>upvar</code> inside. Try this:</p> <pre><code>keylset x ... keylset y ... proc_name x ;# just the varname proc_name y ;# just the varname proc proc_name {varname} { upvar 1 $varname keyedlist puts [keylkeys keyedlist] } </code></pre>