Connect with us

News

Blockchain programming languages: what are smart contracts designed for?

Published

on

On August 6, the crypto community learned that the Cosmos blockchain platform plans to integrate with at least two new programming languages for smart contracts: Secure ECMAScript (SES) and Kadenamint. The release of new languages from Cosmos could lead to the end of Ethereum's hegemony in the field of creating smart contracts. We’ll take a look at the new programming languages of the Cosmos ecosystem and remembered which of them are also popular among blockchain developers.

Secure ECMAScript, or SES, is a JavaScript – based smart contract language. Launch of SES was announced blokcheyn startups Agoric in July 2018 and will be available to users after Cosmos release its protocol to communicate blokcheynov (Inter-blockchain communications protocol). The key idea of SES is based on Google’s work as part of the Caja project and on Salesforce’s Locker Service security architecture. Both products allow developers to work with third-party code in a secure environment.

Kadenamint is the new version of the Pact programming language. This programming language is designed to work with the blockchain network of the Kadena platform, a subsidiary of JPMorgran. Kadena founder Stuart Popejoy said the company is creating a Cosmos-adapted version of its Pact language as part of the partnership. Popejoy hopes that working with Cosmos will give developers more opportunities to work with the Kadena blockchain, because, according to the head of the blockchain company, Pact is many times better than Ethereum's Solidity language:

“We see in Pact a new standard among smart contract programming languages, because it is better than Solidity in everything. Every developer who uses [Pact] is faster. It is safer. We have an official language check. ”

In addition to Kadenamint and Secure ECMAScript, there is a third programming language for the Cosmos platform, which has existed since 2016. It is called Ethermint and in its principle of operation is almost identical to Solidity, the most popular language for creating smart contracts on the Ethereum blockchain platform.

Ethereum and Solidity

Solidity is the programming language for Ethereum smart contracts, which appeared simultaneously with the release of this blockchain platform in 2015. Solidity creators Christian Reitwizer and Gavin Wood have made Solidity look like JavaScript and its ECMA-262 specification so that it is easily accessible to a wide range of developers. In this connection, at the moment their number exceeds 200,000 people. Those developers who know one of the modern programming languages, for example C #, C ++, Python and the JavaScript mentioned above, can learn Solidity quickly enough.

However, Solidity is still slightly different from other programming languages, so beginners make mistakes when writing code. So, smart contracts on the Ethereum blockchain are executed using its own virtual machine EVM (Ethereum Virtual Machine), which appeared with the launch of Ethereum in 2015 and has a number of bugs and vulnerabilities. For example, EVM can only store a limited number of block hashes, which allows you to trick a crypto casino that works on the principle of a random number generator on the Ethereum blockchain.

EVM itself is written in compilation of several programming languages: JavaScript, C #, C / C ++, Python, Ruby, Go, JavaScript. In addition to Solidity, there are versions of Ethereum clients for these programming languages. The new version of EVM and Solidity is likely to appear only with the Ethereum 2.0 platform update in 2020.

C, C ++ and C #

C is one of the oldest and most popular programming languages in the world. C is a compiled, statically typed general-purpose language launched in 1972 by Bell Labs employee Dennis Ritchie. This language had a significant impact on the development of the software industry, and its syntax became the basis for programming languages such as C ++, C #, Java and Objective-C.

As for C ++, it was on it that the source code of Bitcoin was written. And although it is used infrequently for writing smart contracts on the Ethereum network, it is with C ++ that most smart contracts for EOS are written. It also contains XRP Ledger, a decentralized cryptographic register that stores information about XRP. Also in C ++ with JavaScript plans to migrate the NEM blockchain platform.

C # is an object-oriented programming language developed by Microsoft in 2000. It currently has over 2 million developers worldwide. With C #, the Stratis and NEO blockchain platforms were created. True, the latter, like Ethereum, has clients for other programming languages: Python, Java and Go.

Java

This relatively young programming language appeared in 1995 and since then has already managed to enter the top three most popular in the world. It is a software environment for executing Ethereum EVM scripts, and it also runs the core network of the NEM blockchain.

Javascript

This multi-paradigm language is used by 9.7 million programmers around the world. When developing JavaScript, the main goal was to create a language similar to Java, but easy for non-programmers to use. JavaScript is not spoken by any company or organization.

Today JavaScript is most widely used in web browsers, being a scripting language that makes web pages interactive. As for the blockchain, the SDK for creating dApps on the Lisk sidechain is written in JavaScript, it can also be used to write Ethereum smart contracts.

SQL

This programming language was created by IBM in 1974. He is very popular in web development and currently owns more than 7 million developers. Initially, SQL was the main way a user worked with a database, which was designed to describe, modify, and retrieve data.

However, over time, SQL became more complex and began to acquire features that are characteristic of modern programming languages. Smart contracts for the Aergo blockchain platform are written and executed in this language.

Golang (go)

Go is a compiled multi-threaded programming language based on the open source C language and developed internally by Google. Work on it began in 2007, but officially the language was only introduced in November 2009.

The language was developed for high-performance programs running on modern distributed systems and multi-core processors. Go's launch was seen by market players as an attempt to create a C / C ++ replacement. Today, the Hyperledger Fabric blockchain platform uses this programming language, and the Go developer community has about 800,000 people.

Waves and Ride

Waves, the largest blockchain platform in Eastern Europe, launched its own programming language, Ride, in June. This language is designed to create smart contracts and decentralized applications.

Waves Ride claims that the new solution will be easy to learn and use, which means that it will help programmers reduce errors. Another advantage of Ride, which Waves CEO Alexander Ivanov speaks of, is to lower the threshold for blockchain entry for new developers.

Fift

One of the most anticipated blockchains in the world, TON, uses the Fift programming language to create smart contracts. It has much in common with the Forth programming language, which appeared about 50 years ago, and in syntax it is somewhat similar to Lisp. However, this language is completely unfriendly to programmers who write in JavaScript or Python.

This language is optimized for the TON virtual machine to reduce the cost of blockchain network capacities for the execution of smart contracts. At the same time, Fift is necessary only for writing smart contracts and their execution in the TON masterchain (basic blockchain), and other programming languages can be used to write smart contracts for the TON blockchain (sidechains) of the blockchain.

Development prospects

There are hundreds of blockchain platforms and dozens of programming languages for them in the world. The announcement of the release of new programming languages from Cosmos suggests that continuous competition continues to attract developers between market participants. And, unlike other projects, Cosmos has a competitive advantage – this platform provides its services for any blockchain developers, and not just those who work with one specific platform.

Ethereum runs the risk of losing its lead in blockchain development and losing ground, especially if the long-awaited Solidity update is again delayed. Fift has a good chance to create a large community of developers, but it is unlikely that it will be actively used outside the Telegram blockchain.

Publication date 08/14/2019
Share this material on social networks and leave your opinion in the comments below.


Advertisement

TOP 10 CRYPTOCURRENCY

#NamePriceMarket CapChangePrice Graph (24h)
Advertisement
  • bitcoinBitcoin (BTC) $ 23,972.00
  • ethereumEthereum (ETH) $ 1,888.75
  • cardanoCardano (ADA) $ 0.533566
  • polkadotPolkadot (DOT) $ 9.21
  • litecoinLitecoin (LTC) $ 61.80
  • chainlinkChainlink (LINK) $ 8.99
  • stellarStellar (XLM) $ 0.125972
  • bitcoin-cashBitcoin Cash (BCH) $ 142.02