SOLIDITY-LANGUAGE
Langage contracts Ethereum Solidity.
Définition
Solidity caracteristiques : Statically-typed, inheritance, libraries, user-defined types, fonctions, modifiers, events, struct, mapping, enum. Type system : value types (uint8-256, int, address, bytes, bool, enum), reference types (struct, array, mapping). Versions : Solidity 0.8.x current (octobre 2024 0.8.27 stable), introduces SafeMath par defaut, immutable, transient storage EIP-1153. Compilation : solc -> AST -> Yul (Intermediate Representation) -> EVM bytecode + Contract ABI. Tools : Hardhat, Foundry, Remix IDE, Truffle (deprecated).
Origine
Solidity propose par Gavin Wood 2014 ; developpement par Christian Reitwiessner et Alex Beregszaszi ; v0.1 release 2015 ; v0.4 (2016), v0.5 (2018), v0.6 (2019), v0.7 (2020), v0.8 (2020) breaking changes ; current 0.8.27.
Exemple en contexte
ConsenSys Diligence audite Solidity 0.8.27 smart contract Uniswap V4 utilisant transient storage EIP-1153 pour optimiser gas costs des hooks ; deploiement mainnet Q4 2024.
Termes liés
- Smart Contract EVM — cible compilation.