What is the canonical way to pass a list to a Tcl procedure?
I\'d really like it if I could get it so that a list is automatically expanded into a variable number of arg
It depends on the version of Tcl you're using, but: For 8.5:
set mylist {a b c}
myprocedure option1 option2 {*}$mylist
For 8.4 and below:
set mylist {a b c}
eval myprocedure option1 option2 $mylist
# or, if option1 and 2 are variables
eval myprocedure [list $option1] [list $option2] $mylist
# or, as Bryan prefers
eval myprocedure \$option1 \$option2 $mylist