Issue #5825 has been updated by phluid61 (Matthew Kerwin).


=begin
alexeymuranov (Alexey Muranov) wrote:
> +1, why only initialize?

I agree.  Is there a reason not to specify something other than a local variable as the receiver for a method parameter?

For example:

(({# precondition: ???
# postcondition: updates @instance_var and $global_var
def some_thing(local_var, @instance_var, $global_var)
  # ...
end}))

I know it's not safe, in that it makes it quite easy to shoot one's self in the foot, but I don't know that it's necessarily a bad thing unless someone tells me it is.
=end

----------------------------------------
Feature #5825: Sweet instance var assignment in the object initializer
https://bugs.ruby-lang.org/issues/5825#change-34551

Author: goshakkk (Gosha Arinich)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: next minor


I'm very excited about this feature in CoffeeScript, and think it might be a nice-to-have thing in Ruby 2.0.

That's how I think it would look like:

`class Me
  def initialize(@name, @age, @location); end
end`

So we can declare @variables in the initializer method parameters definition to avoid assigning instance variables from method arguments by hand, like:

`class Me
  def initialize(name, age, location)
    @name = name
    @age = age
    @location = location
  end
end`

Want to hear what do you guys think, does that feature worth being included in 2.0?


-- 
http://bugs.ruby-lang.org/