Scoped binding of a method to an object
allen at wirfs-brock.com
Mon Oct 14 11:19:39 PDT 2013
On Oct 14, 2013, at 11:06 AM, Brendan Eich wrote:
>> Allen Wirfs-Brock <mailto:allen at wirfs-brock.com>
>> October 14, 2013 10:52 AM
>> I'm not sure I buy your "Smalltalk has nominal class types" assertion,
> I defer to your Smalltalk expertise :-P. However, there's nothing I know of that allows unrelated class definitions to be related by the subclass relation. Right?
> In ES6, due to Object.setPrototypeOf/__proto__, two unrelated classes can become related in a dynamic fashion.
You can dynamically change the superclass of a class but that will trigger the recompilation process for that class and its subclasses (implies that superclass to subclass links must be available). This is mostly about the instance variable (ie, private state) shape of the instances and methods that reference instance variable. Methods lookups are still dynamic which is the reason I think "nominal class types" a la Java or C# doesn't really apply.
More information about the es-discuss