Arbitrum Stylus(アービトラム・スタイラス)について
Arbitrumが、Wasm(WebAssembly)にコンパイルできる言語でのDapps開発をサポートする「Stylus」をメインネットでローンチさせました。これにより既存の他領域のエンジニアが容易にDapps開発を始められるようになりました。
今回はこのStylusについて簡単にまとめていきます。
ArbitrumはイーサリアムのL2ブロックチェーンです。これまでEthereum上で処理を行っている仮想マシンのEVMと互換性のある仮想マシンをサポートし、Ethereumと同様にSolidityのようなEVM用の開発言語での開発のみをサポートしていました。
そのため一般のエンジニアがDapps開発をするには、新しい開発言語を学ぶという心理的障壁があり、新しいエンジニアを取り込むことが難しいと考えられています。言語仕様自体はそれほど難しくないものの、ブロックチェーンを扱ってこなかったエンジニアにとってはEVM用言語独特の仕様や癖を受け入れる必要がありました。
そんな中、様々なブロックチェーンがSolidityではないRustやCなどの既存の開発言語を使用できる環境を整備し始めました。実際Wasmで実行可能な言語での開発を可能にしてほしいという声も少なくなかったため、Rustでの開発を強みとしてマーケティングを行ったブロックチェーンも少なくありません。
例えばSolanaでは、EVMを正式にサポートしない代わりにRustを用いてDappsを開発できます。他のチェーンでも、EVMではなくWasm環境を提供することでRustでの開発をサポートしていることは珍しくありません。
今回ローンチされたStylusは、EVM環境をサポートしてきたArbitrumに”追加で”Wasm環境を実装するというものです。これにより、今後ArbitrumではSolidityやVyperのようなこれまでEVM環境で使用されていた言語のサポートを維持しながらも、RustやC、C++のような言語での開発もできるようになります。
そのため他領域のエンジニアがWeb3へ参入するための心理的障壁が小さくなり、エコシステムの拡大速度を高められると考えられます。さらに構築するアプリの種類や処理に応じて、適切な言語を選択できるためガス代や処理速度もより効率的になります。
なお、すでにArbitrumのブロックチェーンエクスプローラーのArbiscanは、Stylusのコードを認証する機能をサポートしており、これまでSolidityで開発したコードと同じようにArbiscan上で操作することも可能です。またドキュメントの公開もされており、簡単に学習および開発がスタートできます。
ローンチして数日ですが、Stylusを用いてRustでスマートコントラクトを開発することでガス代を大きく削減できたという報告もすでにいくつもされています。今後サポートする言語が増えることもわかってるので目が離せませんね。
今回の内容を理解すれば、今後システム的なテーマをより楽しめるようになると思います。何度か読んでみてください。
関連リンク
今後もこちらでの連載や、私のnote、XなどでWeb3に関する情報発信をしていきますので、ぜひフォローいただけると嬉しいです。