After programing in ruby for the past 3 months, I must say I'm happier. However, I find where to break a long expression into lines can be potentially dangerous and very hidden to debug. For example: >>begin ?> (1 * 2 ?> + 1) ?> end => 1 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. I'm still using 1.8.2 on win32. Is it a bug of that version?