From: jacknagel@... Date: 2015-01-21T05:46:42+00:00 Subject: [ruby-core:67714] [ruby-trunk - Bug #10762] Math ** Issue #10762 has been updated by Jack Nagel. It's operator precedence. `**` has higher precedence than unary `-` ``` irb> -1 ** 0 => -1 irb> (-1) ** 0 => 1 irb> -(1 ** 0) => -1 ``` ---------------------------------------- Bug #10762: Math ** https://bugs.ruby-lang.org/issues/10762#change-51144 * Author: Jonathan Thomas * Status: Open * Priority: Normal * Assignee: * ruby -v: ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin14] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN ---------------------------------------- According to the Maths, "any number raised to the zero power equals one". Yet: ~~~ ruby -e 'puts((-1 ** 0) == 1)' => false ~~~ -- https://bugs.ruby-lang.org/