In Tcl, {*}
will enumerate the elements of a list.
For instance, consider:
set cmd {$out Stuff}
puts $cmd
# => $out Stuff
puts {*}$cmd
# => can not find channel named "$out"
It is documented here.
Basically, the above code is puts
-ing {$out Stuff}
in the first case, but it is evaluating puts $out Stuff
in the second. Of course, if you now have a channel named $out
, you will have Stuff
in that channel.