1. "else/elseif" has to be to the right of a brace. It's one thing if you like using this style of idiotic formatting for your if-else statements:
if { $x == 0 } {
do_zero()
} else {
do_non_zero()
}
which hides the structure by putting the "else" in a different column than the "if". But for the language to require you to do such a stupid thing is, well, stupid. It's also bad that it requires you to cleverly put the open brace of the "if" on the same line. It's what I'd usually do anyway, but bad requirement.
2. $x is assigned to as "x". How insane is that? You have two names for the same thing, and you can silently do the wrong thing if you
set $x "abc"
.3. Whitespace is significant in multi-dimensional arrays. Excuse me?
$matrix(1, 1)
(with a space) is different than $matrix(1,1)
?I could go on, but that's enough ranting for today.
1 comment:
To confuse you even more:
There is nothing like a multi-dimensional array in tcl.
Arrays have a string as key and, therefore, the string "1, 1" is quite obviously different to the string "1,1". So unfortunately only one-dimensional arrays. :(
Post a Comment