Don't get confused by the terminology and don't get into word-thinking. A "contract" on the blockchain is nothing like a "contract" in the legal sense. Even if I get your signature on a blockchain saying that you are transferring your assets to me, there won't be any court willing to uphold this. In the same vein, it's not because that people talk about TC as a smart contract that gives it legal backing or makes it subject to the legalities of a "real world" contract.
You could call it "stored procedures" if you prefer, but at the end of the day outlawing tornado cash based on its code is as ridiculous as outlawing RSA.
What you describe, person A agreeing to sell over something to person B, even if just verbally, is a legal contract. Verbal contracts are perfectly legally binding, if somewhat hard to enforce for lack of proof. The lack of proof part is not a problem when it comes to blockchains, is it?
Just because it is virtual doesn't mean real world laws don't apply. What gave you that idea?
> person A agreeing to sell over something to person B, even if just verbally, is a legal contract.
This is not at all what I am saying. What I am saying is that a contract is the definition of terms of a transaction, while a smart contract is the execution of a transaction.
A "contract" defines what parties are supposed to do and the courts use to determine the legal process in case of disputes. Enforcement is not part of the contract.
A "smart contract" is just about enforcement. It makes no sense to talk about the "smart contract" being legally binding or not, much like it makes no sense to talk about "running computer code" or "firing a gun" being legally binding. Sure, you can discuss if the actions resulting from someone running a program to be legal or not, but this has nothing to do with those actions where established in a "legally bound contract" or not.
You could call it "stored procedures" if you prefer, but at the end of the day outlawing tornado cash based on its code is as ridiculous as outlawing RSA.