Jarmo Pertman wrote in post #984005: > When analyzing the differences between Scala and Ruby in that concrete > example then i can see that Scala "wins" by automatically initializing > local variable "_" in the context of "block". Setting _ with block arguments is pretty ugly, especially if the block takes multiple arguments (you'd get an array). It's like Perl's $_ which Ruby unfortunately inherits for gets. Your instance_eval solution changes the object context; code in your block would not be able to use instance variables or methods of the object to which the enclosing method belongs, which would be a major stumbling block for anything other than the simple cases you give. If you want to make the code shorter than scala, you could always alias :s :select :-) -- Posted via http://www.ruby-forum.com/.