3 ms·
Under disadvantages: > It’s harder to reason out program flow This seems like a big one. You're basically creating a distributed systems problem for yourself.
by jeffreyrogers 9y ago
Under disadvantages:
> It’s harder to reason out program flow
This seems like a big one. You're basically creating a distributed systems problem for yourself.
- typon 9y agoHow is programming in a standard OOP system any easier to reason about? Unless all your object state is immutable, it becomes hard to reason about program flow very quickly (non-linearly with code size, usually.)
- barrkel 9y agoYou can't normally talk to an object without a reference to it. This means data flow can be used to scope control flow. MOP indirects everything through a big global variable, so anything can talk to anything, and calls it a feature. Object interfaces in static languages are static, most of the time. Thus a lot more of the conversation can be statically analyzed for correctness.