In Smalltalk you could do that, with any class side constructor or with a builder class. If you're looking for something more similar to how some JavaScript constructors work, where you can map property names of an anonymous object to properties of the new instance then there is no such feature, but I guess you could build it more or less easily passing a dictionary as argument. Ie. JavaScript: Object.create(Dog.prototype, { sound: 'bark', pitch: 1.1, filterFunction: function(s){...} }) And then have a Dog instance with sound, pitch and filterFunction copied from the second argument. Ie. Smalltalk Dog fromDictionary: (Dictionary new at: #sound put: 'bark'; at: #pitch put: 1.1; at: #filterFunction put: [:s | ]; yourself). And then map the keys in the dictionary to methods, properties or instance variables of your new Dog instance. Kind of hacky for Smalltalk, but useful in JS due to its prototypical essence. Not having a hash/dictionary literal syntax makes its use counter-intuitive and too verbose. I'd rather use my own constructor, maybe it will take a little longer but in the long term the explicit selector will make its semantics more clear. Regards, -- Esteban. -- View this message in context: http://forum.world.st/smalltalk-instantiate-an-object-with-parameters-tp4647... Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.