Cardano Plutus 1.68.0.0 将 Plutus V4 引入开发栈

Cardano 的 Plutus 团队发布了 1.68.0.0 版本,包含 Plutus V4 账本 API 类型、新的智能合约内建函数以及更简化的 Plinth 设置。本次发布让开发者可提前接触为 Dijkstra 时代准备的组件,而 Plutus V4 仍在开发中。

By SongMarketCap

Cardano News - Cardano Plutus 1.68.0.0 将 Plutus V4 引入开发栈

随着 Plutus 1.68.0.0 的发布,Cardano 的智能合约栈更进一步接近 Dijkstra 时代。此次更新引入 Plutus V4 账本 API 类型,扩展链上资产处理,并简化了启动新 Plinth 项目的流程。

此次发布并未在 Cardano 主网激活 Plutus V4,但将下一代执行环境的部分组件引入当前开发工具链。

Plutus V4 Types Enter the Current Toolchain

Plutus 提供 Cardano 智能合约使用的执行语言与工具。其账本 API 暴露交易与区块链数据,脚本可在验证交易时进行检查。

1.68.0.0 版本加入 Plutus V4 及其相关的 dijkstraPV 账本 API 支持。此次发布还将 V4 添加到 CIP-57 合约蓝图中,使脚本可以被标识为 v4 版本。

Plutus 团队提醒,V4 仍在开发中,这些新的账本 API 类型可能会在 Dijkstra 之前发生变化。

针对 Data 的直接模式匹配也在推进。case 表达式现在可以直接基于 Data.Constr 值的构造器标签进行分派。配合新近加入的 dropList 功能,这可降低处理结构化链上数据的脚本逻辑开销。

New Builtins Improve Asset Validation

Plutus 1.68.0.0 还引入来自 CIP-0168 的 assetCount 内建函数及其成本模型。

该函数返回某个 value 中包含的不同 policy ID 与 token name 配对的数量。这为智能合约提供了直接的方法来核验存在多少种不同资产,而无需手动遍历完整的 value 结构。

该功能与 Cardano 的多资产模型密切相关。举例来说,一个 DeFi 合约可能需要核验某个 UTxO 是否包含 ADA、DJED 以及一组特定的协议代币,同时拒绝可能干扰验证或提高后续交易成本的意外资产。

此次发布还为 multiIndexArray 提供了基准化成本评估。这是一项旨在一次操作中获取多个数组元素的内建函数。当脚本需要从同一数组中取多个位置时,它可减少重复的查找逻辑。

这些新增内容将先前在 Cardano 改进提案中描述的功能进一步落地到已发布的 Plutus 代码中。

Plinth Setup Moves to a One-Command Workflow

同一开发周期也简化了 Plinth 的上手流程。Plinth 是用于构建 Plutus 智能合约的 Haskell 框架。

更新后的 plinth-template 包含一套安装工作流,能够通过单条命令创建新项目,同时处理所需的开发工具与项目结构。

这使本次发布在开发层面产生两方面影响。Plutus 1.68.0.0 暴露出更多为 Dijkstra 做准备的执行环境,而 Plinth 的变更则降低了开发者开始使用它所需的准备工作。

Plutus V4 仍在定义中,但开发者如今已有更广的实现面可用于测试。账本 API 类型、新的内建函数以及更新的工具正把下一代 Plutus 从规范层面推进到可用的开发发布,早于 Dijkstra 账本时代的激活。