チェコのJetBrainsは、Webブラウザ上での高速実行を可能にするバイナリフォーマットWebAssembly上で利用可能なKotlin/Wasmがアルファ版に到達したことを、12月7日(現地時間)に発表した。
Kotlin/Wasmは、Kotlin 1.8.20において実験的な機能としてはじめて導入されて以来、改良が進められている。Kotlinは、メモリ管理が自動化されており、フェーズ4(標準化)に到達したガベージコレクション提案に基づいて構築されているため、ChromeとFirefoxの最新バージョンでは調整なしでKotlin/Wasmアプリケーションを実行できる。
なお、SafariはWasm GCをまだサポートしていないものの、JavaScriptCoreでの必要な機能の実装は、すでに進行している。
現時点ですでに、Kotlin PlaygroundがKotlin/Wasmをサポートしており、kotlinxライブラリもKotlin/Wasmに導入されたほか、ネットワークアプリケーションの構築が可能なJetBrainsのフレームワークであるKtorもWebAssemblyに登場し、次期リリースではKtorのHTTPクライアントを使ってKotlin/Wasmコードから直接ネットワークリクエストを送信できるようになるという。
さらに、米GoogleのJetpack ComposeをベースにしたJetBrainsの宣言型マルチプラットフォームUIツールキットであるCompose Multiplatformも、Kotlin Multiplatformウィザードを使用したKotlin/Wasmプロジェクト生成を、実験的にサポートしている。
パフォーマンス面では、Kotlin/Wasmは未だアルファ版ながら、ほぼすべてのマクロベンチマークにおいてKotlin/JSを上回っているほか、Kotlin/Wasm上で実行されるCompose Multiplatformは、JVM上で同じアプリケーションを実行するのと同等の処理速度を実現した。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です