Peña, Botp wrote:
> From: Arul hari [mailto:hariharan.spc / rediffmail.com]
> # I wan to know the difference,I feel soething is there,but i
> # am not able  to findout the answers for this.
> 
> there is difference, but not much
> 
>> def f a,b
>>    yield a,b
>> end
> 
> precedence issue:
> 
>> f 1,2 {|x,y| p x,y}
> SyntaxError: compile error
> (irb):33: syntax error, unexpected '{', expecting $end
> f 1,2 {|x,y| p x,y}
>        ^
> 
>> f 1,2 do|x,y| p x,y end
> 1
> 2
> 
> as always, it is safe by enclosing parameters w parens
> 
> 
> irb(main):035:0> f(1,2) {|x,y| p x,y}
> 1
> 2
> 
> irb(main):036:0> f(1,2) do|x,y| p x,y end
> 1
> 2
> 
> also, one-liner chain fans sees do-end as noisy and sensitive to spacing 
> (since do-ends are keywords)
> 
> irb(main):037:0> [1,2,3].map{|x| 2*x}.map{|x|x+1}
> => [3, 5, 7]
> irb(main):038:0> [1,2,3].map do|x| 2*x end.map do |x|x+1 end
> => [3, 5, 7]
> irb(main):039:0> [1,2,3].mapdo|x| 2*x end.map do |x|x+1 end
> SyntaxError: compile error
> (irb):39: syntax error, unexpected kEND, expecting $end
> [1,2,3].mapdo|x| 2*x end.map do |x|x+1 end
>                         ^
> 
> nonetheless, i like both. i particularly like do-end since i like typing 
> fast without using shift. but if you have editors like textmate or 
> similar, no need :)
> 
> kind regards -botp

Dear Friend,
   You have told me that with example,but that is not suitable for me.
I have not changed anything from that,simple I have but one bracket.
It will not shows any error.
So,Your example also not suitable for my questions.
Please tell me some more examples with exaplantion.

def f a,b
yield a,b
end
nil
f 1,2 {|x,y| p x,y}
SyntaxError: compile error
(irb):4: syntax error, unexpected '{', expecting $end
f 1,2 {|x,y| p x,y}
       ^
        from (irb):4
        from :0
f 1,2 do|x,y| p x,y end
1
2
nil
f (1,2) {|x,y| p x,y}
(irb):6: warning: don't put space before argument parentheses
1
2
nil
f (1,2){|x,y| p x,y}
(irb):7: warning: don't put space before argument parentheses
1
2
nil

-- 
Posted via http://www.ruby-forum.com/.