On Oct 5, 2008, at 15:35 , Dave Thomas wrote: > Issue #615 has been updated by Dave Thomas. > > > irb(main):001:0> x = "Sample" > => "Sample" > irb(main):002:0> x.instance_eval do > irb(main):003:1* puts self.class > irb(main):004:1> puts reverse > irb(main):005:1> end > String > elpmaS to take the idea one step further to the OP's request: def with o, &block o.instance_eval(&block) end x = "Sample" with x do puts self.class # needs self because class is part of the syntax puts reverse end To me, this seems simultaneously trivial and unhelpful. I wouldn't want to see it part of the language itself.