> I strongly recommend not following the provided link, which is basically inane...
This was my personal rumination on the differences between the two approaches to OOP. Or a way to verbalize it, if you will.
> to my knowledge, you most definitely can not do that in such a manner in Self. Slots manipulation in Self can only be done through primitive messages (e.g. `_AddSlots:`, which takes an object whose slots should be copied into the receiver).
This is probably true, I haven't used Self in anger so I will remove that.
> I'm not saying maps-as-objects is great, but I am saying these assertions are 1. wrong and 2. nonsensical.
First thing you do to diss a statement is call it flat out nonsense.
> In ES5, the exact same behavior is provided by Object.getPrototypeOf providing access to the internal [[Prototype]]. Most implementations also provide direct access via the __proto__ property, which IIRC ES6 standardizes. And of course the `instanceof` operator has been there since ES3, but that's only ~13 years ago.
Why do there have to be `typeof`, `instanceof` and `.prototype`? Whereas you actually want one way to get at the object's type?
> All runtimes but MSIE (unless they've added it in IE11) already implement `const`, and it's standardized in ES6.
Maybe I should note that I was talking about JS as it is deployable today, to narrow the scope.
> You mean, something like ES6's yield?
This one? http://stackoverflow.com/questions/2282140/whats-the-yield-k...
> Terrible exception handling
No objection there, javascript may well have a worse exception handling than Go, a language whose users try very hard to make others believe doesn't have exceptions in the first place. At least runtimes are finally trying to generate callbacks worth reading.
Not that this help when mixing with async, as your final traceback will lack 90% of the necessary context.
If your stack records the necessary metadata it could easily give you something like `closured on line X in Items.fetchItems` insted of the 'anonymous function' 5 levels deep.
Hey folks, thanks for all the constructive criticism and death wishes. Will do my best to respond in detail - but for now I've removed the fixed footer. Deployment from the train FTW.
Am I the only person thinking that any Java-based IDE demos have been sped up by the magic of editing by at least 200% and all the SBBOD-ing has been trimmed out?
> to my knowledge, you most definitely can not do that in such a manner in Self. Slots manipulation in Self can only be done through primitive messages (e.g. `_AddSlots:`, which takes an object whose slots should be copied into the receiver). This is probably true, I haven't used Self in anger so I will remove that.
> I'm not saying maps-as-objects is great, but I am saying these assertions are 1. wrong and 2. nonsensical. First thing you do to diss a statement is call it flat out nonsense.
> In ES5, the exact same behavior is provided by Object.getPrototypeOf providing access to the internal [[Prototype]]. Most implementations also provide direct access via the __proto__ property, which IIRC ES6 standardizes. And of course the `instanceof` operator has been there since ES3, but that's only ~13 years ago.
Why do there have to be `typeof`, `instanceof` and `.prototype`? Whereas you actually want one way to get at the object's type?
> All runtimes but MSIE (unless they've added it in IE11) already implement `const`, and it's standardized in ES6.
Maybe I should note that I was talking about JS as it is deployable today, to narrow the scope.
> You mean, something like ES6's yield? This one? http://stackoverflow.com/questions/2282140/whats-the-yield-k... > Terrible exception handling No objection there, javascript may well have a worse exception handling than Go, a language whose users try very hard to make others believe doesn't have exceptions in the first place. At least runtimes are finally trying to generate callbacks worth reading. Not that this help when mixing with async, as your final traceback will lack 90% of the necessary context.
If your stack records the necessary metadata it could easily give you something like `closured on line X in Items.fetchItems` insted of the 'anonymous function' 5 levels deep.