Open letter to Brantly Millegan, in reference to EP6.1

Unless anyone objects I will archive this thread in about 12 hours. Please continue tangent discussions in another thread if you would like. Thank you.

4 Likes

Just do it right away. Why wait in the sun @neiman, right?

1 Like

To be clear, this has nothing to do with “storage slots” or anything specific to the $ENS contract.

All smart contracts are immutable (cannot be changed) by default. Some smart contracts implement “proxy” abilities (like EIP-2535 sure, although that one isn’t that popular tbh) that add certain mutability, but that is not the default and is usually because the smart contract is still being worked on.

Also, some smart contracts are modular. For example, ENS recently swapped out the pricing oracle smart contract that governs how ENS names are auctioned off after expiration: because those contracts explicitly granted that power to the owner of the contracts (the DAO, in this case).

Just want it to be clear this isn’t specifically an $ENS contract thing, it’s a general smart contract thing.

1 Like

Since I have migrated from Solana toward Ethereum, the “Program Accounts” in Solana are upgradeable through an “Upgradeable Loader” by default and you can essentially upload new contracts to the ‘Program Account’ address. This is a form of nested mutability (very similar to modular contracts); an executable program however is still immutable, as they must for smart-contracts like you said. It almost feels like a step backward

You can implement the same pattern in ethereum. The lack of it here is by design.

1 Like