Solidity Definition

| Publish date: 08/13/2018 (Last updated: August 13, 2018 08:11 AM)

What is Solidity?

Solidity is a primarily Ethereum programming language tool used to create machine-level code that is executable on EVM; in other words, it takes human-readable code and turns it into implementable smart contracts on blockchain platforms.

Solidity was proposed and developed starting in 2014 by core Ethereum contributors including Gavin Wood, Alex Beregszaszi, Liana Husikyan, and Yoichi Hirai as a way to simplify and enable smart contract writing applications that support the implementation of self-enforcing business logic. It is now the primary Ethereum language, and also operates on other competing private blockchains.

What does Solidity offer?

As the most common Ethereum language, Solidity was designed to be easy for programmers to learn, particularly if they are familiar with other programming languages such as C, Java/JavaScript, and Python. Solidity is statistically typed programming and is compiled to EVM-executable bytecode.

Solidity Definition

Programming languages create actions by directions called function calls. Solidity knows major two types of function calls: internal function calls and external function calls. Internal function calls do not create an actual EVM, or message call. External ones do.

Other available function calls also exist. Private function calls and state variables are only visible within the contract they are in, and not in derived contracts. Public function calls are a part of the interface that makes up the contract, and can be called internally or via external message.

Additionally, Solidity offers modifiers, which change the behavior of functions. They can be used to check conditions, override contracts based on certain properties, and set up unique parameters for certain contracts.

Contracts can also have fallback functions created within Solidity. These are valuable when a transaction doesn’t have the earning potential it will cost to execute, or if there is no other set of conditions that match the condition being presented.


Related Posts

Decentralized Protocols Definition
What are Decentralized Protocols? A decentralized protocol is a…
ASIC Miner Definition
What is an ASIC Miner? Application specific integrated circuit…
Distributed Ledger Definition
What is a Distributed Ledger? A distributed ledger is…

Leave a Comment