lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


2014/1/6 William Ahern <william@25thandclement.com>:

> That last argument over the ternary operator totally confused me. I had
> always correctly parsed the precedence of and/or expressions without
> thinking. But after reading that huge thread (or threads) I totally lost all
> confidence. I don't know why. But the mere discussion of it really messed
> with my head. Now whenever I write a complex boolean expression I find
> myself carefully stepping through it, like a child counting pennies
> (centavos?) with his fingers.

And rightly so. The difficulty comes not with `and`/`or`, but with `not`, which
sits near the other end of the precedence pile.

E.g.

inside = x+eps>y and not x-eps>y

is wrong, you need to parenthesize:

inside = x+eps>y and not (x-eps>y)