Though admittedly the Smalltalk folks also don't really get the hybrid model. And of course a "pure" programming model is attractive for many reasons. I think applying OO-techniques to our language meta-model actually allows us to have the best of both worlds.
-
-
When you say OO in the language meta-model - what is it you’re referring to in more detail?
1 reply 0 retweets 0 likes -
Hmm...most of this will probably be familiar, but bear with me. One of the key points is that connecting components appears to require somewhat different mechanisms than implementing them. See the "scripted components" pattern: https://www.inf.ed.ac.uk/teaching/courses/sapm/2011-2012/slides/scripting.pdf …
2 replies 1 retweet 3 likes -
Ousterhout also wrote quite a bit about this, examples include the shell, Visual Basic, NumPy etc. What I find interesting is that the pattern seems to be powerful enough that it can overcome some pretty horrific choices for component languages.
1 reply 0 retweets 2 likes -
(Or composition languages). It also covers up the not insubstantial costs of inter-language communication, so something interesting going on. Objective-C takes the two languages and fuses them more or less badly, into a single language. Powerful combo, despite all the obvious...
1 reply 0 retweets 0 likes -
...shortcomings. Huge benefit is that the border is malleable and you can adjust components as needed, something that's too difficult in many scripted-components systems, and arguably too simple in uniform languages.
1 reply 0 retweets 1 like -
But ObjC lacks the full dynamics of a scripting language, unless we bundle a compiler in the runtime, and C seems to bulky for that.
1 reply 0 retweets 1 like -
Exactly. Like almost all the component/script systems, it wasn't actually designed for this from the start, it just sort of happened. So what you want is something where you can tailor a single base language (base class) into different "dialects"? (subclasses) with interop and..
3 replies 0 retweets 0 likes -
Objective-C is basically just NeXT/Apple COM, IMO. The differences between Obj-C and other COM-like systems are more details than substantive.
2 replies 0 retweets 0 likes -
msgSend is IMO better than COM in a lot of key ways, though. For fairly small additional dispatch overhead you get a lot more ABI resilience and flexibility
1 reply 0 retweets 3 likes
Ehh, I don’t agree. The static vtables of COM are a lot friendlier (CPU BTBs are designed for that), and the monkey-patchability of Obj-C is brittle due to C types. (I don’t love COM either. I’d personally just use static dispatch and have dyld worry about monkey patching.)
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.