Well this is the question I was asking myself too. Wouldn't that be at least partially true? Your example of "dapps running on bitcointalk" only falls apart because bitcointalk is not an immutable decentralized chain.
The question I have is that, if by storing every transaction's "arbitrary bytes" on Bitcoin, guaranteeing its immutability and persistence, if you're able to store your smart contract AND completely recreate the entire "state" of the transactions performed on it by using solely what's stored on the Bitcoin blockchain, wouldn't you have effectively built it on bitcoin?
I guess the flaw remains only in verifying the truthfulness of this information, and if there is a method decentralized and trustless enough to consistently verify the truthfulness of this information by any given party.
The main characteristic of a "smart contract" is its
execution not its storage.
- Consider vending machines for example. The platform is centralized but it can execute the contract. You insert the money and select what you want, then the machine executes its smart contract and if it passes it automatically returns what you ordered. If you store that smart contract on bitcointalk which is centralized and mutable like the vending machine, it becomes arbitrary bytes because bitcointalk can not execute it.
- Now consider a P2WPKH smart contract. When you spend that output, the system (or full nodes) automatically "executes" that smart contract and if it passes your funds are transferred; otherwise you are prevented to execute that smart contract (ie. to spend someone else's money).
If you store your P2WPKH on bitcointalk it similarly becomes arbitrary useless bytes. Not because what you stored is not a smart contract or useful, but because bitcointalk can not execute them. Even if you manage to convince some other people that what you stored on bitcointalk has value and sell it to them!
- Now consider the arbitrary bytes that they are injecting into the blockchain using an exploit like Ordinals Attack. Who executes these contracts? Certainly not Bitcoin! That means it doesn't matter if Bitcoin is decentralization with a n immutable blockchain. That contract is executed elsewhere in another protocol on another platform that can be controlled by centralized entities that change the rules of it whenever they want. Exactly like Tether, a centralized protocol with a centralized platform that only stores arbitrary data on bitcoin blockchain (using OP_RETURN as Omni layer). The centralized entity controlling Tether can freeze your funds, increase/decrease the supply cap, ...
Now the full circle; if they mange to create a decentralized network then there is no need to use bitcoin blockchain anymore! It can execute and store the smart contracts at the same time. Can even be merge mined with bitcoin so that it can benefit from the huge hashrate bitcoin has.