Optional argument of [if]. It's usually good style to omit the ''then'' itself, but can aid clarity when using multi-line expressions. Compare with [else]. ====== if {$some_long_and_complex_condition && $some_other_condition_making_it_even_longer } then { # do the right thing here } else { # do the other right thing here } ====== ---- [wdb] In my humble opinion, clarity matters always, such that I personally count the usage of ''then'' to the list of ''good style''. I've read the opinion above more than once, and I never could understand it's background (possibly the absence of keyword ''then'' in some other languages?) But, of course, that's my personal taste. Additionally, I suppose that usage of ''then'' does not impact the perfomance. [LV] I agree with wdb that I find the presence of ''then'' a better style than leaving it implicit. However, I '''think''' that the point of the original poster was that in the case of writing an ''if'' on one line, that poster preferred not seeing the then: ====== if {$a eq 17} {do stuff} ====== instead of ====== if {$a eq 17} then {do stuff} ====== Perhaps the '''noise''' of the syntactical sugar is the problem for them. [DKF]: You think correctly. I prefer: ====== if {$a == 17} { do stuff } ====== to: ====== if {$a == 17} then { do stuff } ====== but when the condition is long, this is best: ====== if { ([info exists longNamed(variable)] && [get some value from a command with many arguments] == $longNamed(variable)) || [set code [catch { something which might fail } msg]] == 1 } then { do stuff } ====== Code for clarity and you're on the right track! [wdb] Thank you for pointing out the aspect of [noise] which I did not care. And which deserves a wiki page which I have spent an own [[page]] intentionally left blank by me. <> Control Structure | Syntax