Solidity 的十年与重生:从 Classic 到 Core

Solidity 的十年与重生:从 Classic 到 Core

Solidity 走向 1.0 的路线图,终于清晰了。


一、十年之后,Solidity 要"重启"

2025 年,Solidity 已经走过十年。

它从最早期的实验性语言,成长为整个以太坊生态的主力智能合约语言。

如今,团队决定正式开启下一阶段的进化:

一个更简洁、更安全、更灵活的 Core Solidity

官方在《The Road to Core Solidity》系列首篇中,公布了语言未来数年的整体蓝图。

这意味着 Solidity 不只是"再更新几个语法特性",而是一次体系级重构


二、Classic 与 Core:两条并行的路线

Classic Solidity(现有版本)

即当前使用的 0.8.x 系列。

这是大家熟悉的 Solidity,但仍然带有不少历史包袱:

类型系统复杂、不一致、难以扩展。

虽然语法稳定,但核心逻辑早已显得臃肿。

Classic 仍会继续维护,并发布少量破坏性更新(0.9、0.10 版本),

主要任务是清理旧特性、准备迁移环境

Core Solidity(核心版)

Core 是一次从零设计的语言重构

底层类型系统、语义规则、标准库全都重写。

它原生支持:

  • 泛型(Generics)

  • 一等函数(First-class functions)

  • 代数数据类型(Algebraic data types)

  • 模式匹配(Pattern matching)

  • 标准库机制

更重要的是,它保持与 Classic 语法兼容

让开发者能够平滑迁移。

Solidity 1.0 的定义也因此明确:

当 Core Solidity 足够稳定,成为默认语言时,Solidity 才算真正的 1.0。


三、后端的三大重构

当前 Solidity 团队主要集中力量在编译器后端重构,

为 Classic 与 Core 共同打基础。

重点包括三件事:

1️⃣ 修复 IR 管线

当前 IR(中间表示)存在非确定性、性能和可维护性问题。

未来将迁移到SSA 控制流图(CFG)结构

这是现代编译器(如 LLVM)的主流架构。

好处是更快、更稳定、可实现更强的 Gas 优化。

团队还与西班牙马德里大学合作开展 Project GreY

研究 IR → EVM 转换的高效算法,

目标是让编译出的合约在 Gas 成本上更优。

2️⃣ 全面支持 ethdebug

调试是 Solidity 长期的痛点。

官方正引入新的 ethdebug 调试信息标准

能让 IDE、调试器、符号分析器共享一致的源码映射。

未来调试体验将不再依赖特定编译器或前端工具。

3️⃣ 跟进 EVM 升级

团队正适配即将到来的 EVM 变化(如 EIP-5920、EIP-7939 等)。

这些操作码和成本模型更新会影响优化器逻辑与 Gas 估算。

同时,Verkle 树等底层结构更新也将影响 Solidity 的存储模型。


四、Classic Solidity 的"告别演出"

Classic Solidity 将进入"清理与稳定"阶段。

0.9 版本起,重点是:

  • 默认启用 IR 优化管线;

  • 移除过时特性(如 .send().transfer()virtual);

  • 移除旧版 EVM 兼容层;

  • SMTChecker 重命名为 SolCMC 并简化模式。

语法层面将逐步靠拢 Core Solidity,例如:

旧写法 新风格(Core语法)
uint x x: uint
a ? b : c if (a) b else c
function(uint) returns (bool) (uint) -> (bool)
block.number block.number()

这些变化不会立即强制执行,但会在未来版本中逐渐统一。


五、Core Solidity 的设计哲学

Core Solidity 的核心理念是:

"保持最小化,但让扩展成为可能。"

1️⃣ 极简语言核心(SAIL)

内部基于一种极简核心语言 SAIL

支持泛型、类型推导、traits、代数类型等现代特性。

大多数高级功能(如数组、字符串、ERC 库)将通过标准库实现。

2️⃣ 标准库主导一切

Core 不再内置太多"特例语法",

而是通过社区可扩展的 标准库机制 提供能力。

这意味着未来开发者甚至能编写自己的"语言层特性"。

3️⃣ 可形式化验证

Classic Solidity 从未有完整语言规范。

Core 从一开始就以"可形式化验证"为目标,

规范将是可执行的 (Executable Formal Spec),

方便编译器验证、模糊测试与安全审计。


六、语言治理与开放路线

Solidity 团队计划在 Core 阶段正式开放语言治理流程,

让开发者可以像提交 EIP 一样,

通过提案系统推动语言或标准库的演进。

未来可能会出现多个遵循同一规范的 Solidity 编译器实现,

这将推动工具生态和安全审计水平整体提升。


七、总结:Solidity 的"重生点"

阶段 特征 目标
Classic Solidity(0.8.x~0.10) 维护、清理、兼容 Core 语法与编译器统一
Core Solidity(1.0+) 新类型系统 + 泛型 + 标准库 现代、安全、可扩展
长远目标 开放规范、社区治理 多编译器、多实现生态

Core Solidity 并不是推翻重来,而是"重构以延续"。

它让 Solidity 能在未来十年继续演化,

同时保持兼容性与生态稳定。


🧭 结语

这次路线图的发布,

意味着 Solidity 正从"实用语言"走向"可持续生态"。

当 Core Solidity 正式成为主流,

Solidity 才算真正完成了从实验性工具到稳定语言的进化。

相关推荐
小攻城狮长成ing17 小时前
从0开始学区块链第12天—如何使用可见性标识符
web3·区块链·智能合约·solidity·以太坊
小小测试开发19 小时前
Python Web3库入门:从零开始与以太坊区块链交互
python·web3·区块链
旺仔Sec19 小时前
2025年江西省职业院校技能大赛高职组“区块链技术应用”任务书(3卷)
区块链
软件工程小施同学1 天前
区块链论文速读 CCF A--USENIX Security 2025(3)
区块链
热心网友俣先生1 天前
2025年大湾区杯粤港澳金融数模竞赛B题完整数据集分享
金融·区块链
旺仔Sec1 天前
2025年江西省职业院校技能大赛高职组“区块链技术应用”任务书(2卷)
区块链
懒猫gg1 天前
Paillier 同态加密
区块链·同态加密
阿登林2 天前
区块链技术在生产数据管理中的应用:Hyperledger Fabric与蚂蚁链智能合约设计
区块链·智能合约·fabric
Ashlee_code2 天前
**新一代券商与机构专业交易系统开发:从国际金融变局到技术架构重构**
重构·架构·系统架构·区块链·私募·柜台·中资券商