Smart contract is one of the most important modern technologies
that will contribute significantly to transforming the real world into a digital world
Long before the appearance of blockchain technology an American cryptographer and programmer Nick Szabo described the principle of smart contracts in 1996 as digital protocols for information transfer that use mathematical algorithms to execute any transaction process automatically once the conditions established by contractors are met.
in 1994, the idea of smart contracts had little interest because there was no digital
platform that could support them.
Today, increasing growth of bitcoin and the blockchain technologies support such as Ethereum, the popularity of smart contracts has begun to increase.
Briefly: Smart contract is a computer program that controls the
digital currencies transfer directly or assets between parties under
Smart contracts are complex and their potential goes beyond the simple transfer of assets, being able to execute transactions in a wide range of fields, from legal processes to insurance premiums to crowdfunding agreements to financial derivatives, the overarching principle is to increase the transparency of the transaction while reducing fees and allaying the potential for conflict over nonperformance.
Smart contracts have the potential to disintermediate the legal and financial fields, in
particular, simplifying and automating routine and repetitive processes for which people
currently pay lawyers and banks sizable fees to perform as well as these contracts have no
room for interpretation because all terms are predetermined and automatically enforced
by the contract itself.
Smart contracts also known as a cryptocontract
Smart contract Platforms
Although there are varies Smart Contract Platforms but with the exception of Ethereum most of the platforms are not in a usable state here are several kinds of platforms on which to deploy smart
We have no doubt that many industries will be disrupted and improved by this technology, the question is, who will be the winners? and how will Ethereum remain king of the smart contracts?
Kind of the smart contract languages
Smart contract language is a programming language that is either used to write a smart contract directly or is compiled to it.
The idea of smart contracts has become a lot more popular thanks to Ethereum.
In a perfect world, smart contracts would automate a lot of aspects of our daily lives.
So far, the technology has yet to be put through its paces, as all attempts to do so have uncovered major security flaws.
It is a worrisome trend, but there may be a solution on the horizon.
Auditing these contracts is the logical answer but using a different programming language can solve a lot of problems as well.
I will show you the most popular kind of languages used to write
Solidity is a contract-oriented, high-level language for implementing smart contracts.
Solidity is statically typed, supports inheritance, libraries and complex user-defined types among other features.
Solidity is the primary kind of smart contract language on Ethereum
Lvy is a smart contract language developed at Chain that can compile to Bitcoin Script.
Ivy allows you to write contracts that secure Bitcoin using arbitrary combinations of conditions supported by Bitcoin Script.
Lvy is described on its website as a declarative language in that its control-flow isn't specified, compared to Ethereum's Solidity language (which is object oriented with higher organization).
Scilla is a new programming language proposed by a team of researchers.
It is not only a more secure programming language, but it also addresses some of the development problems found in most smart contracts.
With its blockchain-agnostic approach, Scilla is certainly worth keeping an eye on.
Scilla is capable of solving security and development problems in the smart contract
Furthermore, this new language will allow for developers to build smart contract-based applications on any blockchain, regardless of whether it’s public or private.
This means that Scilla will essentially be competing against Solidity for Ethereum.
It is even possible to “convert” code written in Solidity to Scilla.
Pact is a new way to write smart contracts on a blockchain, with a level of assurance not
possible with other smart-contract languages.
Pact is an expressive, easy-to-learn, and productive language to code in, with excellent tooling.
Kadena announced that we they releasing there smart-contract language Pact as open- source.
Open-sourcing is all about empowering users, which is what motivates Pact as well:
empowering users to enact meaningful events on a blockchain, safely and quickly.
Open-sourcing amplifies this further.
A new programming language from Ethereum which has undergone some major
It is doubtful Viper will ever replace Solidity as Ethereum’s main coding language, but that does not mean it is a useless project right now.
In fact, the roadmap features outlined by its team are quite promising.
Viper focuses on security and language and compiler simplicity.
It has a python-like indentation scheme.
Serpent is one of Ethereum's earlier smart contracting languages that is no longer safe to
The language, as suggested by its name, is designed to be very similar to Python; it is intended to be maximally clean and simple, combining many of the efficiency benefits of a low-level language with ease-of-use in programming style, and at the same time adding special domain-specific features for contract programming.
LLL is one of the original Ethereum smart contract programming languages and provides a different perspective and programming discipline when compared to the Solidity language.
LLL facilitates the creation of very clean EVM code whilst removing the worst of the pain of coding for the EVM directly: namely stack management and jump management.
Chain provides enterprise-grade blockchain infrastructure with SDKs in popular languages such as Ruby, Java, and NodeJS.
Lisk does not support Smart Contracts yet.
They plan to in the future but not right now.
Mutan is a Golang-like language.
It was deprecated in march 2015 in the favor of Solidity.
It will be quite interesting to see what the future holds for smart contract technology in
general and kind of smart contract languages in particular.
There is a dire need for more secure solutions as far as this technology is concerned.
Especially given the DAO debacle, security improvements should never be overlooked.
certainly, looking into Compartmentalizing various components of smart contract coding will hopefully help thwart any attacks made against smart contracts in the future.