Solidity in 2022: Recent and Planned Features
summary
Solidity now ships a nearly-stable second compiler pipeline using Yul IR (bounties on bugs), an optimizer that runs on that IR, and concrete features: user-defined errors (4‑byte selector + ABI‑encoded fields), bytes.concat, abi.encodeCall with type checks, calldata slices, and immutables stored in code for much cheaper reads. Inline array literals compile without EVM stack overflow via IR optimizations, user-defined value types use wrap/unwrap, and a stdlib plus generics and user operators are planned; optimizer SMT tricks target redundant checks.
AI-written summary · about
chapters (12)
- 0:00Intro
- 1:40General Updates
- 3:33Second Compiler Pipeline
- 5:42UserDefined Errors
- 7:56Immutable
- 9:25Inline arrays
- 12:40Userdefined value types
- 14:30How does it work
- 16:47Using Global
- 23:34Generics
- 25:33Data enums
- 28:44Memory reference tracking
related talks
37mExperimental Solidity
38mIntroducing Core Solidity
16m`via IR` speedrun
41mBattle of the Languages
25msolx: an LLVM-based Solidity toolchain
12mPlank: The New Best Way to Develop Smart Contracts
20mSlang Building Solidity Compiler APIs from a Declarative Language Specification
28mSSA CFG Yul A new viaIR backend
