From: frankapimenta@... Date: 2017-10-19T06:50:49+00:00 Subject: [ruby-core:83377] [Ruby trunk Feature#14025] #initialize with ivars Issue #14025 has been updated by frankpimenta (Frank Pimenta). Where did I define that only one argument could be passed? I don't want to initialize ivar explicitly in #initialize. I would like that instead of: def initialize name='default_name', age=0 @name, @age = name, age end I could do either: def initialize @name = 'default_name', @age=0 end or as with getter and setters via attr_* : initialize name: 'default_name', age: 0 What parts do you think are missing? Maybe I already know them but I am trying to find time to fulfil it. ---------------------------------------- Feature #14025: #initialize with ivars https://bugs.ruby-lang.org/issues/14025#change-67338 * Author: frankpimenta (Frank Pimenta) * Status: Open * Priority: Normal * Assignee: * Target version: ---------------------------------------- For: class Person def initialize name = 'person' @name = name end end I thought that the following would be nice: class Person initialize :name end class Person initialize name: 'person', age: 18 end class Person def initialize @name="person", @age=18 puts "initializing...something to run before" end end -- B., Frank. -- https://bugs.ruby-lang.org/ Unsubscribe: