I thought about it, but TCL has no construct equivalent to Perl's range array. And, as you know already, I hate Perl :)
And my summary of TCL is that yes, you can base a language entirely around quoting and parsing strings, and it is a bad idea.
My solution wouldn't be very TCLish though. I would just write a function to produce ranges, and then I would pre-process arguments rather than post-process them in each function that wants to support such a basic notion. Of course the fact that this approach is not very TCLish speaks volumes for why I don't like the language...
Cheers,
Ben