Comment

Comment by 7373737373

Encapsulation[0] might be the term you are looking for. Enforcing object boundaries makes it easier to reason about program behavior and enforce security guarantees.

If objects can only change their own data, then all change affecting the object is either caused by the object itself, or indirectly by another when information crosses the interface the boundary presents (e.g. a message was received).

Most languages use a memory model that doesn't even have the concept of access rights, everything can potentially affect anything else. If your program has to be secure, this is a nightmare.

[0] https://en.wikipedia.org/wiki/Encapsulation_(computer_progra...

Also interesting:

https://en.wikipedia.org/wiki/Message_passing

https://en.wikipedia.org/wiki/Capability-based_security

https://en.wikipedia.org/wiki/Agent-based_model

https://en.wikipedia.org/wiki/Actor_model

parent 7373737373 6 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton