版本比较

密钥

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

需求:是否有从语言层面,更优雅的对Mapping类场景的解决方案?

String

背景:Move中没有string类型,用vector<u8>来表示字符串。在开发bridge项目中,为了比对和验证两条公链签名和验签的一致性,写了大量测试代码来验证。一个痛点时,当想把Move中生成的签名在Solidity中测试是,只能拷贝bytes,非常不直观。相信在多个生态迁移时,这个问题会普遍遇到,虽然不影响功能,但确实是一个很麻烦的点。

需求:能否考虑对string的原生支持。a背景:Move中没有string类型,用vector<u8>来表示字符串。在开发bridge项目中,为了比对和验证两条公链签名和验签的一致性,写了大量测试代码来验证。一个痛点是,当想把Move中生成的签名在Solidity中测试是,只能拷贝bytes,非常不直观。相信在多个生态迁移时,这个问题会普遍遇到,虽然不影响功能,但确实是一个很麻烦的点。

需求:能否考虑对string的原生支持。

在借贷项目开发过程中,使用 Move 遇到的一些问题:

  1. Move 最大只支持 u128,并且不支持小数

    1. Move 不支持小数。我们为此实现了固定精度的计算,我们设定的固定小数位有 18位(因为当前的币最大的小数位是 18)。固定精度比浮动精度有更好的计算准确度。

    2. 在做 Defi 应用时,我们需要准确的计算。为了实现这一目的,我们使用了上述固定精度,当遇到乘法时极容易出现计算溢出错误。u128 能代表 3×10^38 表达空间,当我们使用两个固定小数位是 18 的数进行乘法计算时,极易溢出(n×10^18 × m*10^18)

2.调试的易用性.Debug 断点

合约调试暂时只能使用输出特定数字的方式进行问题定位。能否考虑支持 Debug 工具,可以断点调试,以提高调试的易用性

3.module 管理

4.全局常量


如何推广 Move

区块链圈子里的很多人认为 Solidity 和 Evm 已经占据了主导地位,类似于当年的 javascript,其他的竞争者已经没有机会了。我们需要一起努力想办法推广 Move,构建 Move 生态,改变这种看法。

...