Are smart contracts really upgradable?
“TL;DR” Not exactly.
What is OpenZeppelin?
Why upgrade a Contract?
How do I upgrade a Contract?
There is a special function in Solidity called DELEGATECALL that allows you to call another contract using the context of the caller, not the callee. This allows for the distinction between state and logic which makes the “upgrade” possible.
About the Author
Javier Acrich a multi-talented .NET Developer capable of managing both front-end and back-end development. Successfully creates and modifies web features to improve functioning for clients. Skilled in architecture and design of web applications and solutions.