I wrote a lot of Tcl back in my days and the one thing I remember is the awful scoping rules, e.g. if you want to reference a global variable, you need to say so first, otherwise you'll be referring to a non-existent local variable and you won't get any error, just an null value.
It was horrible.
Tk was nice, though.