Plutus is a general-purpose functional programming environment for Cardano, the third-generation blockchain, developed by IOHK.
The world’s first blockchain was launched in 2009 to support bitcoin, a form of electronic cash. The unknown person behind the system called himself Satoshi Nakamoto. It appears that bitcoin was a reaction to the financial crisis and the central banks that controlled the world’s currencies. The blockchain is a database that is copied to the computers of everyone who uses the system whenever a transaction is made. There is no government or central bank controlling the flow of electronic cash between two people; it is a peer-to-peer system. The transactions are encrypted (hence ‘cryptocurrency’), so no-one can see who has made a transaction, though the transfer itself is recorded on the blockchain for everyone to see. So, a blockchain is a decentralized, peer-to-peer, encrypted database that records cryptocurrency transactions.
A score more bitcoin-style cryptocurrencies were launched. Then, in 2015, Ethereum, an improved blockchain and cryptocurrency, was launched, which included the ability to write automated contracts between parties, ‘smart contracts’. A smart contract is an agreement between two parties that is written in computer code. Once the terms of the contract are digitally verified as being met, payment is made automatically in a cryptocurrency. Because the smart contract is stored on the blockchain, it is irreversible and can be tracked.
In 2017, Cardano was released by Input Output Hong Kong (IOHK) – a blockchain R&D company led by Charles Hoskinson, a former co-founder of Ethereum. Cardano is the computing platform that runs the blockchain for the Ada cryptocurrency. Cardano builds on the first two ‘generations’ of cryptocurrencies, bitcoin and ethereum, in several ways. First, its software is designed using academic research and peer-reviewed academic papers; this means its underlying algorithms are rigorously tested and proven. Second, the code is written in Haskell, a formal programming language. This mathematically-based language produces code that is far more reliable and less prone to bugs and vulnerabilities than other languages. Another benefit is that the Cardano blockchain is much more efficient than bitcoin, so consumes far less energy in the real world.
The Cardano platform is still being developed by IOHK and will be democratized in 2019, when the smart contract functionality will come on stream. The Plutus and Marlowe packages being discussed in Edinburgh pave the way for that event, because they allow financial institutions and the global programming community to prepare products in advance.
Marlowe provides a way for professionals in the finance industry who have no programming background to generate code and create software products. It is an easy-to-use programming language that enables them to build financial contracts on the blockchain.