&& Syntax

Yes, I'm a rube-noob

-- ok
if 1 == 1 &&
   2 == 2
  puts "TRUE"
end

-- syntax error
if 1 == 1
   && 2 == 2
  puts "TRUE"
end

The second form is more convienient as you can easily comment out the
line, but it causes a syntax error.

I guess the interpreter need to know where the conditional finishes
and the statements begin?

···

--
Into RFID? www.rfidnewsupdate.com Simple, fast, news.

What about:

irb(main):018:0> if 1 == 1 \
irb(main):019:2* && 2 == 2
irb(main):020:1> p 'df'; end
"df"
=> nil

···

On Fri, 1 Apr 2005 20:29:52 +0900 Lyndon Samson <lyndon.samson@gmail.com> wrote:

Yes, I'm a rube-noob

-- ok
if 1 == 1 &&
   2 == 2
  puts "TRUE"
end

-- syntax error
if 1 == 1
   && 2 == 2
  puts "TRUE"
end

The second form is more convienient as you can easily comment out the
line, but it causes a syntax error.

I guess the interpreter need to know where the conditional finishes
and the statements begin?

--
Into RFID? www.rfidnewsupdate.com Simple, fast, news.

Ruby has a very relaxed parser -- that often (unlike C/Java/etc) uses
EOL to delimit expressions. If the parser scans an obvious hanging
statement (like the &&) it will determine that the expression spans to
the next line. You can use the \ to force the span. If you are after a
format that allows for easy commenting out of lines try:

if expr &&
   expr &&
   expr &&
    true
p true
end

Patrick

···

On Apr 1, 2005 6:29 AM, Lyndon Samson <lyndon.samson@gmail.com> wrote:

Yes, I'm a rube-noob

-- ok
if 1 == 1 &&
   2 == 2
  puts "TRUE"
end

-- syntax error
if 1 == 1
   && 2 == 2
  puts "TRUE"
end

The second form is more convienient as you can easily comment out the
line, but it causes a syntax error.

I guess the interpreter need to know where the conditional finishes
and the statements begin?

Hi,

At Fri, 1 Apr 2005 20:29:52 +0900,
Lyndon Samson wrote in [ruby-talk:136283]:

I guess the interpreter need to know where the conditional finishes
and the statements begin?

The interpreter knows the conditional finishes at the end of
line. Note that newlines are significant in Ruby.

···

--
Nobu Nakada