11 posts tagged with "script_programming"

View All Tags

CKB 脚本编程简介[9]: 减少 Duktape 脚本的执行周期

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

之前的文章介绍过,可以使用纯 JavaScript 构建 CKB 脚本。但是,如果你以前尝试过这种方法,你会注意到一个问题,即基于 JavaScript 的脚本比原生版本消耗更多的周期。虽然这在实验中不是什么问题,但在生产环境中却是非常现实的:更多的周期可以自然地反映在更多的交易费用上。很明显,以下的解决方案可以用来解决这个问题:

CKB 脚本编程简介[8]: 高性能 WASM

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

先前的文章中,我已经向你展示过在 CKB 上运行 WASM 程序,但需要注意的是,WASM 程序的性能可能并不那么出色。我也提到了,有一个潜在的解决方案可以解决这个问题。就在今天,我们发布了一个新项目,这个项目可以用来生成高效的 WASM 程序!让我们赶紧来看看它具体是如何操作的。

Rust 合约[1]:使用 Rust 写 CKB 合约

Jinyang Jiang

Jinyang Jiang

Nervos Core Team

据我所知,目前在 CKB 上部署合约最流行的方式是用 C 代码。在创世块中有 3 个默认的合约 secp256k1 locksecp256k1 multisig lockDeposited DAO,基本上每个使用 CKB 的人都在使用这些合约。

作为一个 Rust 语言爱好者,我们都想在任何场景下使用 Rust。有个好消息,CKB 虚拟机支持 RISC-V 指令集,最近在 Rust 中也增加对 RISC-V 的支持,这意味着我们可以直接将 Rust 代码编译成 RISC-V。然而,坏消息是 RISC-V 目前还不支持 std 库,这意味着你还不能像日常那样去使用 Rust。

本系列文章将向你展示了如何用 Rust 编写 CKB 合约并部署它。我们会发现,no_std Rust 其实比我们一开始想的要好很多。

CKB 脚本编程简介[3]: 自定义代币

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

CKB 的 cell 模型和 VM 支持许多新的用例。然而,这并不意味着我们需要抛弃现有的。如今区块链中的一个常见用途是 token 发行者发布具有特殊目的/意义的新 token 。在以太坊中,我们称之为 ERC20 token ,让我们看看我们如何在 CKB 中构建类似的概念。为了与 ERC20 区分,在 CKB 中的 token 我们称之为 user defined token,简称UDT。

CKB 脚本编程简介[2]: 脚本基础

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

上一篇我们介绍了当前 CKB 的验证模型。这一篇会更加有趣一点,我们要向大家展示如何将脚本代码真正部署到 CKB 网络上去。我希望在你看完本文后,你可以有能力自行去探索 CKB 的世界并按照你自己的意愿去编写新的脚本代码。

CKB 脚本编程简介[1]: 验证模型

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

截至目前,CKB 中的 Cell 验证模型或多或少已经趋于稳定,因此我将在这里开始写一系列文章来介绍 CKB 脚本编程。我的目标是补充在阅读白皮书后编写 CKB 脚本所需的所有缺失的细节实现,这样你就可以开始探索 CKB 呈现的这个美丽的仙境。