Comment by codesnik
problem is not with ifTrue, and not with it's performance, it's easy to do. it is "ifTrue:ifFalse:"
also it is common to do assignments in the "if", and with actual method and blocks scope of the introduced variable would be different and everyone would be tripping on it all the time.