#dusk $DUSK
这两天又翻了一遍 @Dusk 的架构文档,有个问题我前面其实想简单了。
DuskEVM 最后也会回到 DuskDS settlement,那为什么还要单独保留 DuskVM?
一开始我以为就是开发语言不同,一个 Solidity,一个 Rust/WASM。
但继续往下看,差别其实在执行路径。
DuskVM 是直接在 L1 上跑。
DuskEVM 不是。交易先走 sequencer,在 EVM 层执行,后面还有 batch、state commitment,再接回 DuskDS。
所以哪怕最后落到同一个 settlement layer,中间经历的东西也完全不一样。
这个区别我觉得挺重要。
已经有一套 Solidity 产品,想少改代码迁过来,那 DuskEVM 很合理。工具、开发习惯基本都熟。
但如果应用本身就要直接碰 L1,或者要用 Dusk 原生执行能力、协议级逻辑,再硬绕 EVM 这一层未必有必要。
所以我现在已经不太纠结 DuskEVM 和 DuskVM 谁“更高级”。
更像是两条路。
一条方便现有 EVM 开发者进来。
另一条留给那些本来就想直接用 Dusk-native 能力的人。
它们最后都能接到 DuskDS,但 execution path 不是一回事。
这也是我觉得 Dusk 这套架构比“又一个兼容 EVM 的 L1”更值得研究的地方。
这两天又翻了一遍 @Dusk 的架构文档,有个问题我前面其实想简单了。
DuskEVM 最后也会回到 DuskDS settlement,那为什么还要单独保留 DuskVM?
一开始我以为就是开发语言不同,一个 Solidity,一个 Rust/WASM。
但继续往下看,差别其实在执行路径。
DuskVM 是直接在 L1 上跑。
DuskEVM 不是。交易先走 sequencer,在 EVM 层执行,后面还有 batch、state commitment,再接回 DuskDS。
所以哪怕最后落到同一个 settlement layer,中间经历的东西也完全不一样。
这个区别我觉得挺重要。
已经有一套 Solidity 产品,想少改代码迁过来,那 DuskEVM 很合理。工具、开发习惯基本都熟。
但如果应用本身就要直接碰 L1,或者要用 Dusk 原生执行能力、协议级逻辑,再硬绕 EVM 这一层未必有必要。
所以我现在已经不太纠结 DuskEVM 和 DuskVM 谁“更高级”。
更像是两条路。
一条方便现有 EVM 开发者进来。
另一条留给那些本来就想直接用 Dusk-native 能力的人。
它们最后都能接到 DuskDS,但 execution path 不是一回事。
这也是我觉得 Dusk 这套架构比“又一个兼容 EVM 的 L1”更值得研究的地方。