There's one thing where I prefer Python over Ruby. Testing whether an object is included in some collection happens so often, that a special syntax just looks better. Just to test how Ruby would feel like, I modified the system to allow object in array and object not in array as new kinds of expressions. Internally, Ruby uses "include?" (in the second case inverted as with "not") to perform the test. IMHO it nicely fits into the language. A patch to parse.y (1.6.4) is attached. I hacked this into the file with a lot of trail and error, you I cannot guarantee that it is working in all cases. ----snip---- 251a252 > %nonassoc kIN 748a750,757 > | arg kIN arg > { > $$ = call_op($3, rb_intern("include?"), 1, $1); > } > | arg kNOT kIN arg > { > $$ = NEW_NOT(cond(call_op($4, rb_intern("include?"), 1, $1))); > } 4773a4783 > kIN, "in", bye -- Stefan Matthias Aust \/ Truth Until Paradox