>> I guess this may be attributed to the Ruby convention that the return
>> value by default is from the last line. The weird thing is that even
>> parentheses can't guarantee the result to be expected.
>
> "1 * 2" and "+ 1" are both valid ruby expressions, the latter "(unary +)
> 1". How should Ruby find out, that you wanted to continue your first
> expression in the next line?

because of (

I would also expect either a SyntaxError or correct result (3)

the latter seems more natural to me

Regards, Daniel