OK, looks like there is precedence in both directions:

http://en.wikipedia.org/wiki/Order_of_operations#Exceptions


On 7/06/2015 11:48 PM, Jochen Theodorou wrote:
"-8 - 1"

is in all languages I tests -9. That means Pyhton, Lua, Java, Ruby, QBasic, 
Javascript, Go. And that in general independent of spacing.

bye blackdrag

Am 07.06.2015 13:50, schrieb Paul King:

What do lua/python/ruby return for "-8 - 1"?

On 7/06/2015 8:40 PM, Jochen Theodorou wrote:
Am 06.06.2015 13:08, schrieb Paul King:
[...]
def x = 5
assert -x ** 2 == -25  // treated as -(x ** 2)
assert --x ** 2 == 24  // treated as --(x ** 2)

This behavior is different to the other operators and different to what
the comments in the grammar describe as the intended behavior but the
order of two rules was presumably accidentally reversed in the grammar.

After the change, the following executes:

def x = 5
assert -x ** 2 == 25   // treated as (-x) ** 2
assert --x ** 2 == 16  // treated as (--x) ** 2

I just checked Ruby and Python and there -2**4 will return -16, same
for -2^4 in Lua. So now I am wondering if that is the right thing for
unary minus

bye blackdrag



---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus





---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

Reply via email to