Fuel是一个很有趣的以太坊拓展层项目,其项目主要目的是提高以太坊的可扩展性,与其他L2链相同的是,都为了更高的吞吐量在努力,而不同的是,Fuel聚焦于在执行部分解决问题。
Fuel?v1早于2020年部署,是第一个推出到以太坊主网的生产级Optimistic?Rollup。目前已经进展到了Fuel?v2。
更有趣的是,在Fuel?v1时,Fuel推出了Yul+语言,主要用于以太坊虚拟机语言功能的完善。
而在Fuel?v2上又推出了虚拟机语言Sway,本文中将总结Sway的资料,了解其特性。
金色午报 | 5月9日午间重要动态一览:7:00-12:00关键词:BTC减半倒计时、比特大陆、Libra
1.BTC减半一周倒计时——距离减半还2天。
2.网传比特大陆公司主体变更 员工将重新签订合同。
3.吴忌寒:重庆公司不做研发 北京员工不会迁往重庆。
4.Libra任命五名项目维护员同时启动Libra改善建议项目。
5.杨海坡:交易所很快就会发现做矿池是一个大坑。
6.报告:GUSD的发行流通量增加至594.77万枚。
7.韩国世宗市将建立区块链平台验证自动驾驶汽车数字身份。
8.山东破获一起虚拟货币投资案 涉案金额高达3000多万元。
9.比特币小幅下跌,日内最高报9998美元,最低报9730美元。[2020/5/9]
Fuel虚拟机(Fuel?VM)是一种专为Fuel区块链设计的区块链优化VM。Sway则是Fuel?VM的特定语言(DSL),Sway基于Rust,并包含利用区块链VM的语法。
分析 | 金色盘面:XRP/BTC 横盘整理:金色盘面分析师表示:XRP/BTC在6小时K线图出现横盘整理走势,之前触底时间对应BTC见顶,存在较强的跨交易对套利空间,目前BTC反弹,他出现横盘走势,可以作为一个BTC走势的参考之一。[2018/8/6]
Sway程序有四种类型:contract、predicate、script、library。每个Sway文件都必须以它是什么类型的程序的声明开头。
例如,声明文件是一个被调用的wallet_lib。Sway合约应该在库中声明一个ABI(一个应用程序二进制接口),以便下游合约可以重用它。
金色财经现场报道 Huobi Chain将竞选全球领袖及理事会:金色财经6月6日现场报道,在“金融链变——火币集团全球品牌升级发布会”上,火币陈光说,根据火币4个阶段的设计,火币即日起宣布正式启动公链建设,在第一阶段的三个月间重点进行火币全球领袖的招募,火币将通过在火币生态系统下的投票,在第一阶段确定1名火币全球领袖。据介绍,火币还将根据选举结果组成10人左右的理事会(将含有2名左右火币成员)共同构建公链的技术架构和制度设计。[2018/6/6]
Sway工具链由以下几个组件组成。
Forc
金色财经现场报道 TrustNote创始人周政军:区块链技术可提高游戏的真实性:金色财经现场报道,5月19日下午在北京亚洲大酒店2018 HTML5区块链游戏大会上TrustNote创始人周政军认为区块链技术可提高游戏的真实性,主要由4个方面:1、可信记账可构建一个新的游戏生态模型,为商业和市场模式带来变革。2、增加用户账户管理,保护用户隐私。3、可与游戏中的装备、资产结合,让游戏虚拟资产的迁移、交易得到保障。4、提高游戏中虚拟货币的可信度,增加用户粘性。[2018/5/19]
“Fuel?Orchestrator”Forc相当于Rust的Cargo。它是创建、构建、测试和部署Sway项目的主要入口。
Sway语言服务器(forc-lsp)
提供Sway语言服务器forc-lsp以向IDE公开功能。目前,仅通过插件支持Visual?Studio?Code,Vim支持即将推出。
Sway格式化程序(forc-fmt)
提供了一个规范的格式化程序forc-fmt,可以手动运行。Visual?Studio?Code插件将forc-fmt在保存时自动格式化Sway文件。
Fuel?Core
虽然不是Sway工具链的直接部分,但提供了Fuel协议的实现Fuel?Core。
标准库
与Rust类似,Sway带有自己的标准库。
Sway标准库是可移植Sway软件的基础,它是一组适用于更广泛的Sway生态系统的最小共享抽象。它提供核心类型,如Result<T,E>和Option<T>、语言原语上的库定义操作、本机资产管理、区块链上下文操作、访问控制、存储管理以及对来自其他VM的类型的支持等。
Sway与Solidity的区别
Sway所针对的底层虚拟机是Fuel?VM。Solidity指定以太坊虚拟机(EVM)为目标。
Fuel?VM中的字节是64位(8字节),而不是EVM的256位(32字节)。因此,原始整数只能达到u64,而哈希(b256类型)不在寄存器中,而是在内存中。因此,Ab256是指向包含哈希值的32字节内存区域的指针。
Fuel?VM只有无符号整数作为原语提供:u8、u16、u32和u64。不提供有符号整数运算。如果需要,可以在高级库中实现有符号整数和有符号整数算术。
Fuel?VM中的恐慌(即“恢复”)是全局性的,可以完全无条件地恢复交易的状态效果,减去使用的gas。
Fuel?VM中的数学计算默认是安全的(即任何溢出或异常都是“恐慌”)。安全检查在VM实现中本地执行,而不是像Solidity的默认安全数学计算那样在字节码级别执行。
Sway合约没有实际的代码大小限制。物理限制由VM_MAX_RAMVM参数控制,在撰写本文时为64MiB。
Sway与Rust的区别
在Rust中,枚举通常采用以下三种形式之一:单元变体,没有内部数据,结构变体,包含命名字段,元组变体,其中包含数据元组。
在Sway中,该过程被简化了。枚举变体必须全部指定一种类型。这种类型代表他们的内部数据。这实际上与Rust提供的同构,只是语法不同。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。