Simplicity, a combinator-based, typed, and functional language for blockchain applications can reportedly enable Bitcoin’s Script language to handle more complex yet reliable smart contracts.
Bitcoin Script Language is Limited, For Now
According to a new research from Blockstream on Simplicity – a blockchain applications language – distributed ledgers pose a range of unique challenges, which make traditional programming languages unfit.
What’s more, Bitcoin’s Script language is limited to certain combinations of signature checks, hashlocks, and timelocks. Second layer solutions, on the other hand, such as the Lightning Network, for example, have been built on these primitives and, hence, lack the necessary expressiveness for more complicated smart contracts.
The paper also cites a recent upgrade failure of Ethereum’s EVM (Ethereum Virtual Machince), caused by a disagreement of implementations on the results of a certain computation, resulting in lost funds.
Simplicity: Complex Bitcoin Smart Contracts
According to the research, Simplicity is capable of providing the necessary flexibility for a wide range of computations, while, at the same time, allowing users to verify the security, costs, and safety of smart contracts.
Furthermore, the low-level programing language is also purportedly capable of solving certain previously required tradeoffs between reliability and expressiveness.
As it stands now, developers are either able to build a complex yet unreliable smart contract (think The DAO) or they are able to build a basic but reliable one. Thus, Simplicity would make make it easier to write complex smart contracts that are more reliable.
It’s also worth noting that this isn’t the first project which aims to enable effective smart contracts for Bitcoin’s network.
The potential solution has already caught the attention of Bitcoin investor Trace Mayer who said the Simplicity language “can help take things to a whole new level.”
Many people totally miss the point of a blockchain. Simplicity will help take things to a whole new level!
„The job of a blockchain is to verify computation, rather than to do computation.“
— Trace Mayer (@TraceMayer) November 29, 2018
You can check out the technical detailed report on Simplicity here.
Earlier in May, Bitcoinist reported that the RSK project, which intends to build Turing-complete smart-contract capabilities for Bitcoin. RSK has partnered up with iExec in order to deliver off-chain computing and to enable dApps to access on-demand cloud computing resources.
What do you think of Simplicity’s ability to enable complex smart contracts on Bitcoin’s network? Don’t hesitate to let us know in the comments below!
Images courtesy of Shutterstock