From: "marcandre (Marc-Andre Lafortune)" Date: 2012-11-12T03:32:27+09:00 Subject: [ruby-core:49231] [ruby-trunk - Feature #7328][Rejected] Move ** operator precedence under unary + and - Issue #7328 has been updated by marcandre (Marc-Andre Lafortune). Status changed from Open to Rejected Quoting Matz from http://www.ruby-forum.com/topic/87126#163398: > People with mathematical background demand precedence for ** being > higher than that of unary minus. That's the reason. Thomas: Please check your facts, e.g. http://en.wikipedia.org/wiki/Order_of_operations#Exceptions_to_the_standard ---------------------------------------- Feature #7328: Move ** operator precedence under unary + and - https://bugs.ruby-lang.org/issues/7328#change-32788 Author: boris_stitnicky (Boris Stitnicky) Status: Rejected Priority: Normal Assignee: Category: Target version: I would like to ask to consider decreasing ** operator precedence just below that of -/+ unary operators. I know that other languages (eg. Python) have ** operator bind tighter than negation, but seeing -1 ** 0.5 give the result -1 and having to type parenthesis (-1) ** 0.5... Even if it's not worth changing, I'd like to hear this rationalized. I've asked about rationalization of this on SO, and nobody seems to know why this precedence is the way it is. -- http://bugs.ruby-lang.org/