From: recursive.madman@... Date: 2015-02-23T16:08:13+00:00 Subject: [ruby-core:68264] [Ruby trunk - Feature #10883] Passing a block to itself Issue #10883 has been updated by Recursive Madman. Note that for your example that wouldn't be needed: ``` a = an_array.foo.bar a[1..a.length-1].baz ``` is equivalent to ``` an_array.foo.bar[1..-1].baz ``` ---------------------------------------- Feature #10883: Passing a block to itself https://bugs.ruby-lang.org/issues/10883#change-51618 * Author: Damien Robert * Status: Open * Priority: Normal * Assignee: ---------------------------------------- In the discussion of [itself](https://bugs.ruby-lang.org/issues/6373) some people proposed that passing a block to itself could return the value of the block: ~~~ def itself if block_given? yield self else self end end ~~~ It would be very usefull in method chains ~~~~ #this would allow an_array.foo.bar.itself {|x| x[1..x.length-1]}.baz #which flows better than a=an_array.foo.bar a[1..a.length-1].baz ~~~~ -- https://bugs.ruby-lang.org/