let lhsvar assignment arg ... When assignment equals the '=' string, behaves like 'set varname [expr arg ...]'. When assignment is the '=' string following an operator like +, -, *, / or %, behaves like 'set varname [expr {$varname <operator> args}]'
lhsvar | left-hand-side variable |
assignment | assignment token: one of {= += -= *= /= %=} |
args | expression |
% let a = 10 10 % let a = $a - 1 9 % puts $a 9 % let a *= 2 18
arguments do not have to be distinct. You can write this: let a = $a+2 or this: let a = 3 * 4 or even: let a = {$b*cos($d)} |
It is best to enclose expressions in braces when they contain variables. |