On Fri, Apr 11, 2008 at 2:39 PM, David A. Black <dblack / rubypal.com> wrote: > Hi -- > > > > On Fri, 11 Apr 2008, Robert Dober wrote: > > > > > > > [false,nil][rand(2)].send([:&&,:||][rand(2)], > > > method_returning_a_completeley_random_object) > > > > > oops, whats going wrong in my brain I was 100% sure that && was a > > method, but :&& is not even a symbol, what is the reason for that? > > I am obviously missing the obvious.... > > > > I'm not sure what the exact rule is, but for operators I think you > always have to quote them to get their symbol: > > :"&&" No David irb(main):017:0* x=:& irb(main):018:0* 15.send x, 8 => 8 irb(main):019:0> The simple "problem" is that I believed for 3 years that &&, ||, :and and :or where methods (of Object), which they are not :( irb(main):020:0* 15.send("&&", 42) NoMethodError: undefined method `&&' for 15:Fixnum from (irb):20:in `send' from (irb):20 from :0 and unless somebody can point out a good reason why that is like that I am really tempted to make a RCR for 1.9. Opinions? Thx in advance Robert -- http://ruby-smalltalk.blogspot.com/ --- Whereof one cannot speak, thereof one must be silent. Ludwig Wittgenstein