And the BlitzMAX compiler does eliminate dead code, but doing so is not an optimization (as dead code is never executed, it has no effect on the performance of the program).
The only thing close is the Framework keyword; Blitzmax doesn't remove unused functions, loops, if statements, etc.Any how it still fits in the definition of a compiler optimization.
Since when did I become an advocate for optimizing things by hand?
You apparently don't advocate the compiler doing it, so what are you left with? Optimizing by hand or having "sloppy" code you don't want to optimize.