How is that thing you've been saying relevant here or how does it lead to your 2nd paragraph? Smart contracts meet all your requirements for a contract just as PDF contracts do.
I believe the point the poster was making is that "smart contract" is a misnomer and contracts comprised of code should be more realistically called "dumb contracts" since they lack the intelligence to understand and compensate for context and intent.
They really shouldn't be called contracts at all, since intent ("meeting of the minds") is a fundamental part of contract law.
Imagine for example if a mortgage contract contained some bizarre inscrutable loophole that as-written would give the first 3rd party to notice it total control over over the house.
This would of course be laughed out of court because that part of the contract wouldn't be enforcable under contract law.
"Code is law" is more accurately written as "code is not law at all".
> They really shouldn't be called contracts at all, since intent ("meeting of the minds") is a fundamental part of contract law.
That's a really good point. They are arguably neither "smart" nor "contracts". Maybe a better term is "automated blockchain agents" or something similar?
It's a perfectly correct term. They're smart because they do some computation, just like a smart speaker or smart phone. They're contracts because they're an agreement between parties. Not legal contracts, but neither are OOP contracts or social contracts or any other kinds of contract.
I guess I can see your point, but I think the usage of "smart" to describe consumer electronics with computational capabilities is a very different usage. Contracts are not "dumb" technologies that are being "enhanced" with computation; contracts and software code are already the same kind of thing. The difference is that contracts-as-code can actually execute contractual obligations rather than just describing them. I wouldn't describe this enhancement as "smart"... perhaps a better term would be "automatic" or "autonomous".