Is Bitcoin obsolete (and why)? Why does Bitcoin not have smart contracts? Is Bitcoin a technological relic? The answer is surprising.
Very often, Bitcoin functionalities are presented as limited. To put it another way: Bitcoin lacks the functionality offered by the “programmable” blockchains, the pioneer of which was Ethereum. The dynamically developing “applications” of blockchains, such as DEFI or tokenization, was possible thanks to the functionalities of programmable blockchains, i.e. not Bitcoin.
Why does Bitcoin not have smart contracts? The answer is surprising: Bitcoin has the ability to create “smart contracts”, but it is deliberately limited. Why is this the case?
A smart contract is most often defined as a form of a computer program that is executed by the nodes forming the blockchain. This program is stored on the blockchain. The programming language of such contracts in Ethereum is Solidity, and other programmable blockchains use other languages.
It has been assumed that a blockchain with smart contracts (e.g. Ethereum, Tezos, Solana, Binance Chain) is one that allows for the creation of programs with the “Turing completeness” feature. All commonly used programming languages from the world outside of blockchain have this feature. Such languages enable computer programs that use variables, functions, recursions, loops, etc. to be created (to put it simply). Bitcoin has a scripting language that allows the conditions for issuing a transaction to be defined. In practice, such a script is executed by the nodes during the transaction. Bitcoin’s scripting language lacks Turing completeness, and it does not support recursion, nor does it create loops. Nevertheless, from a technical point of view, Bitcoin offers the possibility of programming, although it is not as universal as programmable blockchains. Why is it like that?
Is Bitcoin obsolete (and why)? Bitcoin’s script restrictions are done on purpose. Bitcoin’s goal is to act as a digital currency, whereas the introduction of the possibility of creating advanced smart contracts would introduce Bitcoin to the world of the complex technological problems (and not only) faced by programmable blockchains.
The latest Bitcoin update, i.e.Taproot, introduced new features to its scripting language. This blockchain is developing dynamically, but this development primarily aims to improve its main application – as a global, open, hard, digital currency.
I design and build enterprise IT solutions based on blockchain technology.
I am blockchain architect in Trans.eu building ECMR (digital CMR Consignment Note) based on blockchain. I teachabout Bitcoin, blockchain and decentralization via Linkedin and blog: https://mobycrypt.com.