# Solidity

> object-oriented programming language for writing smart contracts.

**Wikidata**: [Q24909565](https://www.wikidata.org/wiki/Q24909565)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Solidity)  
**Source**: https://4ort.xyz/entity/solidity

## Summary
Solidity is an object-oriented programming language specifically designed for writing smart contracts, particularly for blockchain applications like Ethereum.

## Key Facts
- Solidity is a programming language (instance_of: programming language) used for writing smart contracts.
- It was created in 2014 (inception: 2014).
- The language is distributed under the GNU General Public License, version 3.0.
- The current stable version is 0.4.21 as of March 8, 2018.
- It has a source code repository on GitHub at https://github.com/argotorg/solidity.
- It uses static typing discipline.
- The official website is https://soliditylang.org/.
- It was designed for blockchain applications, particularly Ethereum.

### Q: What is Solidity used for?
A: Solidity is an object-oriented programming language primarily used for writing smart contracts on blockchain platforms, particularly Ethereum.

### Q: When was Solidity created?
A: Solidity was created in 2014.

### Q: What is the license under which Solidity is distributed?
A: Solidity is distributed under the GNU General Public License, version 3.0.

## Why It Matters
Solidity is significant because it's the primary programming language for developing smart contracts on the Ethereum blockchain, enabling the creation of decentralized applications and enabling blockchain-based transactions and applications. It has become the standard language for building smart contracts, which are self-executing contracts with the terms of the agreement directly written into code. This has revolutionized how digital agreements are made and executed without the need for intermediaries.

## Notable For
- It's the first and most widely used language specifically designed for smart contracts on blockchain platforms.
- It was created specifically for the Ethereum blockchain ecosystem.
- It supports static typing discipline.
- It has comprehensive documentation and user manual available.
- It's maintained through an open-source repository on GitHub.

## Body
### Technical Characteristics
Solidity is an object-oriented programming language with static typing discipline. It was designed specifically for writing smart contracts on blockchain platforms, particularly Ethereum. The language supports inheritance, libraries, and complex user-defined types, making it suitable for creating sophisticated decentralized applications.

### Version History
Solidity has had several stable versions:
- 0.4.21 (stable as of March 8, 2018)
- 0.4.20 (stable as of February 14, 2018)
- 0.4.19 (stable as of November 30, 2017)
- 0.4.18 (stable as of October 18, 2017)
- 0.4.17 (stable as of September 21, 2017)
- 0.4.16 (stable as of August 24, 2017)
- 0.4.15 (stable as of August 8, 2017)
- 0.4.14 (stable as of July 31, 2017)
- 0.4.13 (stable as of July 6, 2017)
- 0.4.12 (stable as of July 3, 2017)

### Licensing and Distribution
Solidity is distributed under the GNU General Public License, version 3.0. The source code is maintained in an open-source repository on GitHub, with the repository URL being https://github.com/argotorg/solidity. The license was last updated on March 30, 2023.

### Community and Documentation
Solidity has comprehensive documentation available at https://docs.soliditylang.org/. The language is supported in multiple languages including Arabic, Bulgarian, Catalan, German, English, Spanish, Finnish, French, Hungarian, Indonesian, and others. The official website is https://soliditylang.org/, which is primarily in English.

### Relationship with Other Technologies
Solidity is closely related to blockchain technology and smart contracts. It's particularly associated with the Ethereum platform and has connections to other blockchain-related technologies like Chainlink, a distributed oracle network. The language has been integrated with various development tools and platforms, including support in package managers like Homebrew and MacPorts.

## References

1. [Source](https://github.com/ethereum/solidity/blob/develop/LICENSE.txt)
2. [Release 0.4.21. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.21)
3. [Release 0.4.20. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.20)
4. [Release 0.4.19. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.19)
5. [Release 0.4.18. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.18)
6. [Release 0.4.17. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.17)
7. [Release 0.4.16. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.16)
8. [Release 0.4.15. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.15)
9. [Release 0.4.14. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.14)
10. [Release 0.4.13. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.13)
11. [Release 0.4.12. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.12)
12. [Release 0.4.11. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.11)
13. [Release 0.4.10. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.10)
14. [Release 0.4.9. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.9)
15. [Release 0.4.8. 2017](https://github.com/ethereum/solidity/releases/tag/v0.4.8)
16. [Release 0.4.7. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.7)
17. [Release 0.4.6. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.6)
18. [Release 0.4.5. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.5)
19. [Release 0.4.4. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.4)
20. [Release 0.4.3. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.3)
21. [Release 0.4.2. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.2)
22. [Release 0.4.1. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.1)
23. [Release 0.4.0. 2016](https://github.com/ethereum/solidity/releases/tag/v0.4.0)
24. [Release 0.3.6. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.6)
25. [Release 0.3.5. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.5)
26. [Release 0.3.4. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.4)
27. [Release 0.3.3. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.3)
28. [Release 0.3.2. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.2)
29. [Release 0.3.1. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.1)
30. [Release 0.3.0. 2016](https://github.com/ethereum/solidity/releases/tag/v0.3.0)
31. [Release 0.2.2. 2016](https://github.com/ethereum/solidity/releases/tag/v0.2.2)
32. [Release 0.2.1. 2016](https://github.com/ethereum/solidity/releases/tag/v0.2.1)
33. [Release 0.2.0. 2015](https://github.com/ethereum/solidity/releases/tag/v0.2.0)
34. [Release 0.1.7. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.7)
35. [Release 0.1.6. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.6)
36. [Release 0.1.5. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.5)
37. [Release 0.1.4. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.4)
38. [Release 0.1.3. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.3)
39. [Release 0.1.2. 2015](https://github.com/ethereum/solidity/releases/tag/v0.1.2)
40. [Release 0.4.22. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.22)
41. [Release 0.4.23. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.23)
42. [Release 0.4.24. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.24)
43. [Release 0.4.25. 2018](https://github.com/ethereum/solidity/releases/tag/v0.4.25)
44. [Release 0.5.0. 2018](https://github.com/ethereum/solidity/releases/tag/v0.5.0)
45. [Release 0.5.1. 2018](https://github.com/ethereum/solidity/releases/tag/v0.5.1)
46. [Release 0.5.2. 2018](https://github.com/ethereum/solidity/releases/tag/v0.5.2)
47. [Release 0.5.3. 2019](https://github.com/ethereum/solidity/releases/tag/v0.5.3)
48. [Release 0.5.4. 2019](https://github.com/ethereum/solidity/releases/tag/v0.5.4)
49. [Release 0.5.5. 2019](https://github.com/ethereum/solidity/releases/tag/v0.5.5)
50. [Release 0.5.6. 2019](https://github.com/ethereum/solidity/releases/tag/v0.5.6)