Smart Contracts were mentioned by Nick Szabo in 1997 (https://journals.uic.edu/ojs/index.php/fm/article/view/548). Satoshi literally added a scripting language to Bitcoin (https://en.bitcoin.it/wiki/Script).
> Do you think your bank couldn't allow you to upload random code into their internal database? But there are many, many reasons why they shouldn't and they don't.
Yes I would like that ability please. What are the reasons they don't?
Also, you are seemingly making the mistake of getting lost in technological minutiae; yes, you can call it a stored procedure. In the end, it is all just zeros and ones being shifted around anyway. The financial network created on Ethereum is in key ways, in its /outcome/, fundamentally different from the existing bank network. It is one where an Iranian teenager can design a financial protocol on equal terms to Goldman Sachs. This is a desirable feature.
This design brings with it other consequences. Transfers are hard to reverse; you can consider that a benefit or a flaw, or either at different times. It is simply part of the the nature of the thing.