3 ms·
Wouldn't it be nice if people would always follow the serious whitepaper structure: abstract, summary, conclusion, measurement... But this wouldn't work for pr
by vkazanov 3y ago
Wouldn't it be nice if people would always follow the serious whitepaper structure: abstract, summary, conclusion, measurement...
But this wouldn't work for programming language ideologies. Not for the OOP proponents, anyway.
The DOD crowd can at least demostrate how CPU love blasting through data layed out in arrays.
The FP crowd can least explain how the languages can be formalised.
PS ML is the most natural application of dod principles, no?
- jebarker 3y ago> ML is the most natural application of dod principles, no? Yes, the principles are helpful and natural in implementing the code that will execute the ML model pass with no unnecessary overhead. But in terms of writing the code that configures and defines a model and the pre- + post-processing, and to some extent dataloaders, it's natural to use objects + inheritance. Now I don't actually think using objects and inheritance are antithetical to DOD but it seems that DOD often gets presented that way.
- anonymoushn 3y agoThat sounds totally fine. There's no reason to care about the layout of data that your computer spends almost no time working on or the pointers that it chases dozens of times total.
- discreteevent 3y agoNot everything that matters can be measured.
- tsss 3y agoOOP can also be formalized if you really want to.
- ptx 3y ago> But this wouldn't work for programming language ideologies. Not for the OOP proponents, anyway. Why not? Are you saying that OOP isn't solving any problem? As I understand it, OOP is mainly about allowing behavior to be reconfigured at runtime. As the introduction to "Design Patterns" puts it: "Polymorphism simplifies the definition of clients, decouples objects from each other and lets them vary their relationships to each other at run-time." Using this indirection absolutely everywhere probably isn't great for performance, but it seems helpful in moderation.
- whstl 3y ago* “As I understand it, OOP is mainly about allowing behavior to be reconfigured at runtime. As the introduction to "Design Patterns" puts it: "Polymorphism simplifies the definition of clients, decouples objects from each other and lets them vary their relationships to each other at run-time."”* You're talking about polymorphism, not OOP. While polymorphism also exists in OOP, it is not a concept that is exclusive to it. And polymorphism alone doesn't make OOP.
- deleted 3y ago[deleted]
- FreshStart 3y agoThe original idea was about messages and encapsulation. It's recast incarnation now is about lowering the entry level skill to programming and system understanding to the rock bottom. If you copy paste reality into objects, you are hired,effectivness be damned.
- loup-vaillant 3y ago> Are you saying that OOP isn't solving any problem? I certainly would. More precisely, I don’t see OOP having any comparative advantage. I don’t see it being the most suitable tool for any job. Except maybe GUI. And even then I have my doubts. The actor model though is pretty cool.
- vkazanov 3y agoOOP is not about "allowing...runtime". The key bit is objects: data paired with functions meant to be used with the data. That's it, really.