Solidity Programming Language And Its Use In Other Projects
Solidity has turned out to be a very convenient solution to build smart contracts in the Ethereum blockchain. There's nothing strange about it, as this is what Solidity was made for. However, the Ethereum Virtual Machine (EVM) can be deployed within other networks, and many developers do so. Besides many projects on Ethereum smart contracts, there are solutions that are based on their own platforms. Let’s view the most popular ones (All data presented in the article is valid as of October 23, 2018.)
Solidity in Hyperledger
Hyperledger cannot be called a single project. It is rather a framework that unites several solutions under common approaches. The authors call it an ecosystem. Hyperledger as a solid entity is supported by The Linux Foundation. All technological achievements are claimed to be open-source and free to share.
Hyperledger currently proposes five different solutions (frameworks): Indy, Fabric, Iroha, Sawtool, and Burrow. Four of them (except Indy) use smart contracts as a part of their environments. As a general model, Hyperledger architecture is described by several layers, and smart contracts are placed second. They are considered as a blockchain-based business logic. Globally, there are two different types of contracts envisioned by developers: installed beforehand and deployed during a transaction. A single smart contract is intended to change the state, although different projects treat state changes in different ways.
Out of four Hyperledger solutions with smart contracts, only Sawtool uses Solidity as an alternative language. Burrow also supports EVM but it doesn’t accept Solidity commands. In Sawtool, there are seven contract languages to choose from. Solidity can be used after deploying Hyperledger Burrow EVM and applying the Sawtooth-Ethereum (Seth) transaction family with a transaction processor. Basically, Solidity application doesn’t differ much from the Ethereum environment.
Solidity in Cardano
Smart contracts in Cardano have rather complex background. Their core components are: participants of different origins or natures; events as processes of state changes; objects as the generalization of coins and tokens handled with contracts; time; modality as the interrelation of states. Modality is divided into vertical (which assigns property) and horizontal (which explains sequenciality).
Cardano has several languages involved in the smart contracts creation. Authors explain that the complexity of the system is too high when it comes to standard contract types. This has led to the implementation of a domain-specific language. Solidity in this environment acts as a low-assurance applications instrument.
Solidity in Hedera
Hedera proposes a hashgraph-based centralized solution for various projects. Its core concepts are governance, performance, and security. It is a partially open-source project. The whole code is visible to participants and available for tryout compilation. However, no one but the developers is allowed to impact the project.
Smart contracts are planned to be deployed within the Hedera platform by participants. Their nature, complexity and proprietary issues are up to the creators. Solidity was chosen as a main language for their construction. Hedera developers propose various examples of smart contract codes that can be used as ready products.
In this article, we made a brief description of several well-known projects that accept Solidity as their component. Naturally, there are many less popular blockchains using EVM in their structures. Either way, Ethereum Solidity and Bitcoin Script are not the only languages that are effectively used for smart contracts construction. The amount of such products is constantly increasing. We will talk about them in our next article.