FirefoxもWebAssemblyのガベージコレクション機能を実装中であることが明らかに

2023年2月17日

Google Chromeに続いてFirefoxもWebAssemblyのガベージコレクション機能を試験的に実装していることが、KotlinのWebAssembly対応ドキュメントから分かりました(現時点ではFirefoxのBeta版やNightlyのドキュメントには記載がないようです)。

すでにGoogle Chromeが、Dart言語のWebAssembly対応への対応のために試験的実装を示すOrigin TrialとしてWebAssemblyのガベージコレクション機能の実装を開始しています。

参考:WebAssemblyにガベージコレクション機能が登場、Chrome 111で試験的実装に。Dartなど高級言語のWebAssembly対応へ前進

Firefoxでもほぼ同様に、現在Nightlyとして公開されているFirefox 112aにおいて、開発者向けの設定である「about:config」ページから「javascript.options.wasm_gc」と「javascript.options.wasm_function_references」の設定を「true」にすることで、試験的なWebAssemblyのガベージコレクション機能が有効にできることが分かりました。

fig

ちなみに、Google Chromeと同じWebブラウザエンジンを採用しているMicrosoft Edgeでも、同様に(あるいは必然的に)WebAssemblyのガベージコレクション対応が進んでいます。

WebAssemblyのガベージコレクション機能はまだ仕様策定段階です。

そのため、現時点でWebAssemblyバイナリを生成できるプログラミング言語は、基本的にはプログラマが完全にメモリを管理するC++や、シンプルな仕組みで自動的にメモリ管理が行われるRustのようなプログラミング言語が対象となっています。

JavaやPython、Rubyなど、プログラミング言語のランタイムが自動的にメモリ管理とガベージコレクションを行う仕組みを備えている言語でWebAssemblyバイナリを生成した場合、WebAssemblyランタイムにガベージコレクション機能が備わっていることが望ましいと考えられます。

WebAssemblyに対するガベージコレクション機能の拡張は、こうした言語でのWebAssembly対応が主な目的です。

そしてDartとKotlinが相次いで、WebAssemblyのガベージコレクション機能の対応を発表していることから、比較的早期にWebAssemblyのガベージコレクション機能対応とそれによる言語対応の実装が進んでいくと期待されます。

関連記事

Tags: WebAssembly Web技術 Web標準 Firefox Mozilla Webブラウザ

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本