Implementing permanent storage, encapsulating logic in library functions and abstracting via an interface are all in line with this principle where we use address pointers in the calling Organisation contract for interacting with storage and business logic.
Writing upgradable contracts in Solidity
Elena Dimitrova

One important difference in how libraries work: the address pointer isn’t stored as mutable contract data, it is stored in the contract’s bytecode. So once a contract is linked to a library, there is no way to swap that out.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.