Ruby does not always require the use of parentheses to evaluate methods, unless it's necessary to avoid ambiguities.
def f(x) print x**2 end f 3 # 9
However, if parentheses are used near a method, then Ruby will associate them with the method and expect an argument list inside. An expression is a valid argument.