[250111] Yolc 项目正式开启技术预览 | Haskell GHC 9.12 和 Cabal 3.14 发布
目录
-
- Yolc 项目正式开启技术预览
- Haskell GHC 9.12 和 Cabal 3.14 发布
-
- GHC 9.12 的亮点
- Cabal 3.14 的亮点
- 更多信息
Yolc 项目正式开启技术预览
Yolc 是一种安全、富有表现力且有趣的以太坊编程语言,它基于 YulDSL/Haskell 构建,旨在提升以太坊智能合约的开发体验。
近日,该项目正式开启技术预览!
背景
自2015年7月30日以太坊网络上线以来,至今已处理了数十亿笔交易和数百万个区块。Solidity 语言的出现极大地简化了以太坊上的编程,但 Yolc 的诞生是为了应对一个特定领域的需求:以太坊生态系统需要一种兼具安全性、表现力和趣味性的通用编程语言。
Yolc 的优势
-
通用性:
Yolc 嵌入 Haskell 语言,因此使用 Yolc 编程就是使用 Haskell 编程。Yolc 在 Haskell 中实现了以太坊合约 ABI 规范和 Solidity/Yul 的领域模型,开发者可以在 Haskell 代码编译成 Solidity/Yul 代码之前访问所有 Haskell 语言特性。 -
安全性:
Haskell 是一种纯函数式语言,提供多种类型级别的安全特性。Yolc 的一个独特功能是“线性版本数据”,它由 Haskell 的线性类型特性提供支持。该特性通过隐式数据版本管理,使重入漏洞等一 类漏洞无法通过类型检查器。例如,在获取账户余额后,如果调用外部合约修改了状态,则无法使用之前的余额进行操作,必须重新获取最新的余额。 -
表现力:
Yolc 鼓励开发者编写纯函数,因为纯函数不需要线性类型安全特性。在 Yolc 中编写纯函数代码非常具有表现力,开发者可以访问所有 Haskell 语言特性,包括模式匹配、广义代数数据类型、参 数多态函数等。例如,Yolc 可以使用模式匹配处理可选数字(Haskell 的 Maybe 类型)。 -
趣味性: