2012/6/5 Jonathan M Davis <jmdavisp...@gmx.com>
>
>
> I think that Bernard is being a bit harsh, but in essence, I agree. Since
> the
> evaluation order of arguments is undefined, programmers should be aware of
> that
> and code accordingly. If they don't bother to learn, then they're going to
> get
> bitten, and that's life.
>
> Now, Walter _has_ expressed interest in changing it so that the order of
> evaluation for function arguments is fully defined as being left-to-right,
> which solves the issue. I'd still council against getting into the habit of
> writing code which relies on the order of evaluation for the arguments to a
> function, since it's so common for other languages not to define it (so
> that
> the compiler can better optimize the calls), and so getting into the habit
> of
> writing code which _does_ depend on the order of evalution for function
> arguments will cause you to write bad code you when you work in most other
> programming languages.
>
> As for treating pre or post-increment operators specially in some manner,
> that
> doesn't make sense. The problem is far more general than that. If we're
> going
> to change anything, it would be to make it so that the language itself
> defines
> the order of evaluation of function arguments as being left-to-right.
>
> - Jonathan M Davis
>

Agree completely!

Reply via email to