> |But I still think, as a special case, it woudl be a good idea if > | x in y > |meant the same as > | y.include? x > | > |It is "pretty" (IMO) in the same way that the for loop is pretty... > > It's possible, because 'in' is the reserved word, so that `x in y' is > not valid now. Let us discuss about name, behavior, and > least-surprise-ness. ;-) > Certainly let's discuss it then... ;) I propose that the (pseudo) operator "in" (named as such) should result in a call to include? "under the hood," i.e., x in y or any arbitrary pair of objects x and y, should behave exactly the same as y.include? x, returning true or false and making possible syntax like: if node in binary_tree then ... Now, is there any hidden catch, any unforeseen complication that I am unaware of? Since it mimics an operator, it will have to have a precedence. That's all that comes to my mind. If I had had more sleep last night, I might have an opinion about high versus low... :) Presumably we could fix it so that for all operaors op1 and op2, a op1 b in c op2 d would mean the same as the expression a op1 c.include?(b) op2 d. Does anyone but me like this proposal at all? Hal -- Hal Fulton Sent via Deja.com http://www.deja.com/ Before you buy.