From: Greg Fodor Date: 2007-05-25T13:45:06+09:00 Subject: Re: Introducing the "it" keyword > return $result if v + 1 < 10 > > Although this raises a question....is it supposed to return the result > of "v + 1" or "v + 1 < 10"? As proposed right now, by default, it will be set to the value of the expression (v + 1 < 10), unless a subexpression is specified. I proposed pipes to specify such a subexpression and Michael proposed inheriting the regex style of ordered paren grouping, which has its own set of pros and cons. Personally, I like 'it' :) It reads nicely and makes sense to me. It really *shouldn't* mean or imply anything about it's value, because "it" is whatever you're currently most likely to be 'talking about.' I'd argue that the keyword should only be used for short blocks or expressions, otherwise you're right, it may get confusing. For example: return it if |x| < 5 and strings.map { pluralize it } are good but if |x| < 5 .. lots of code .. my_var = it * 5 end and strings.map do .. lots of code .. pluralize it end Are less desirable. "it" seems best to be used for short one or two liners, not sprinkled throughout long block bodies. This may or not be something we'd even want the interpreter to enforce.