source keyedListLibByReference.tcl set idList {} foreach k {.tcl .exe .txt .htm .html} \ v {{Tcl File} {Windows Executable} {Text} {HTML} {HTML}} { appendKeyedPair idList $k $v } cd /tmp foreach name [glob *] { set ext [file extension $name] set type [getValue $idList $ext] if {$type ne ""} { puts "$name is a $type file" } }