From: Rick DeNatale Date: 2010-09-29T05:19:56+09:00 Subject: Re: puts and return No, the only difference between && and 'and' is their parsing precedence. And nearly every time I've seen and used instead of && I've found a bug. On Tue, Sep 28, 2010 at 4:03 PM, Jim Haungs wrote: > 10.times do |i| >  puts 'too big' and break if i > 5 >  puts "#{i} ok" > end > > I would expect this loop to quit after printing 0 to 5, but it executes > all 10 times. I know "puts" return nil, but isn't "and" (as opposed to > &&) supposed to execute both sides of the expression even if one side > evaluates to false? > > Expected output: > 0 ok > 1 ok > 2 ok > 3 ok > 4 ok > 5 ok > too big > > Actual output: > 0 ok > 1 ok > 2 ok > 3 ok > 4 ok > 5 ok > too big > 6 ok > too big > 7 ok > too big > 8 ok > too big > 9 ok > -- > Posted via http://www.ruby-forum.com/. > > -- Rick DeNatale Blog: http://talklikeaduck.denhaven2.com/ Github: http://github.com/rubyredrick Twitter: @RickDeNatale WWR: http://www.workingwithrails.com/person/9021-rick-denatale LinkedIn: http://www.linkedin.com/in/rickdenatale