4 ms·
I personally prefer fully object-oriented languages, as long as it's an option and not a must like in Java. Replacements for OOP are just another fad, in twent
by 13415 8y ago
I personally prefer fully object-oriented languages, as long as it's an option and not a must like in Java.
Replacements for OOP are just another fad, in twenty years from now people will come up with new fancy object-oriented languages, maybe functional ones with immutable objects, or with some other paradigm that replaces traits, mixins, interfaces, etc.
OOP is good for domains that naturally give rise to a clearcut inheritance structure, such as stateful GUI frameworks or ontologies that directly mirror real-world objects. It's not a magic pink unicorn, but that's true about all other approaches.
If you want everything but small, compact executables, you can already have that today in CommonLisp. It can be used to write functional programs or object-oriented styles and has almost all other programming language concepts you can imagine. Still not many people use it. The choice of the latest programming languages has almost nothing to do with their features and more to do with the availability of tools, libraries, and programmers.
- pdimitar 8y ago> availability of tools, libraries, and programmers. These can -- and have been -- influenced by corporations. Many times. It's a vicious cycle.
- weberc2 8y agoI don’t think so. Go is picking up steam with no sign of slowing down, and the more experience I get, the less I write OO code (I basically only use inheritance as a poor-man’s substitute for automatically delegating to a member, a la anonymous struct embedding in Go—basically syntax sugar).
- Retra 8y ago>OOP is good for domains that naturally give rise to a clearcut inheritance structure, such as stateful GUI frameworks or ontologies that directly mirror real-world objects Stateful GUI frameworks are not the only way to build UI frameworks... It'd be pretty easy to argue that people are building stateful UI frameworks because they're predisposed to think about them in terms of OOP. And so far as I can tell, inheritance ontologies never directly mirror any real world objects. Real world objects are purely compositional with some specialized emergent context-sensitive behaviors.
- edynoid 8y agoIf you look at more recently developed GUI architectures there is this heavy influence from functional reactive programming. The UIs are modelling as reductions over event streams with no mutable state. Most architectures around React do this, for example. The reasons why virtual DOM technology has been developed on the web, was to hide away the stateful nature of the older, OOP-influence DOM API.
- pka 8y ago> OOP is good for domains that naturally give rise to a clearcut inheritance structure, such as stateful GUI frameworks React begs to differ. > or ontologies that directly mirror real-world objects. Such as?