我以前以爲,一個好的區塊鏈應該能包攬一切。
智能合約?
當然。
隱私?
加上。
EVM?
那肯定。
自定義執行?
爲什麼不呢。
功能清單越長,我就越覺得這個項目看起來很厲害。
但我改變主意了。
在看 Dusk 時,吸引我注意的並不是又增加了某個功能。
而是它決定不把所有東西都強行塞進同一種執行環境。
Dusk 對於 Rust/WASM 合約提供 DuskVM,讓合約可直接在 L1 上運行;而 DuskEVM 則通過與 EVM 兼容的環境來提供 Solidity 和 Vyper 的執行。兩條路徑底層都使用 DuskDS 進行結算和數據可用性。(docs.dusk.network)
一開始我想:
“爲什麼要把事情弄得這麼複雜?”
“不是隻用一個環境會更簡單嗎?”
後來我又開始往相反的方向想。
也許把每個應用都強行塞進同一個環境纔是那個更復雜的選擇。
開發者在做一個普通的 Solidity 應用,可能不想學習一整套完全不同的技術棧。
而有人在構建一個協議,需要直接訪問 Dusk 的原生交易模型,那麼他也可能不想讓 EVM 抽象在中間橫加阻礙。
所以 Dusk 本質上是給他們提供不同的入口。
但這並不必然意味着架構就更好。
組件越多,就意味着要維護的東西也越多。
更多接口。
更多假設。
更多導致某事出錯的可能性。
不過,我確實喜歡它背後的思路。
它似乎並不是在說:
“這是我們的唯一區塊鏈環境。大家都用它。”
而更像是在說:
“先告訴我們你打算構建什麼。”
這點細微的差別很重要。
也許是我想得太多了。
但在看到那麼多鏈都試圖成爲“對所有人都一樣”的全能平臺之後,我反而覺得 Dusk 願意保留不同執行路徑的做法,出人意料地令人耳目一新。
有時候,靈活性並不意味着要增加更多功能。
有時候,靈活性在於知道哪些功能不該被硬生生地拼在一起。
#dusk $DUSK @Dusk