The [::list] command defies extension.
All number, sequence, and value of arguments
to [::list] are valid (raise no error), and
mean something. Thus, any attempt to extend
is an incompatibility.
I saw a suggestion that the incompatibility
might be small enough to be acceptable, but
in light of the importance of [::list] in
constructing commands for evaluation, I think
that's not the case:
set script [list $cmd $arg1 $arg2]
No one wants to have to rewrite that to check
whether or not $cmd happens to have the value
"append", etc. In fact, the value "append"
can easily make sense:
eval [list append $varName $value]
All that said, these subcommands ought to be
quite easy to add to the existing
[::struct::list] command already provided
by the struct package in tcllib. When
[::struct::list] is [namespace import]ed,
it gets called as [list], so should look
just like what the TIP author would like
Get latest updates about Open Source Projects, Conferences and News.