KotlinからWebAssemblyバイナリを生成するコンパイラ搭載、「Kotlin/Wasm」が試験的プレビュー公開。Kotlin 1.8.20ベータ版で

今回は「KotlinからWebAssemblyバイナリを生成するコンパイラ搭載、「Kotlin/Wasm」が試験的プレビュー公開。Kotlin 1.8.20ベータ版で」についてご紹介します。

関連ワード (必要、搭載、機能等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Kotlinで書かれたコードをWebAssemblyバイナリとするコンパイル機能を備えた「Kotlin/Wasm」が、Kotlin 1.8.20ベータ版で搭載されたことが明らかになりました。

Kotlin 1.8.20-Beta brings many new features:

– AutoCloseable interface and Base64 encoding in stdlib
– New JVM incremental compilation enabled by default
– Gradle composite builds in Kotlin Multiplatform
– New Kotlin/Wasm compiler backend

Try it out: https://t.co/NbcFQaRjTZ pic.twitter.com/OHDP351baC

— Kotlin (@kotlin) February 8, 2023

KotlinのコードをWebAssemblyにコンパイルするKotlin/Wasmコンパイラ(正確にはコンパイラバックエンドとのことですが、ここでは単に「コンパイラ」と表記します)は、Kotlinの開発元であるJetBrainsがスクラッチから開発したもので、Kotlin/Nativeでは利用しているネイティブバイナリ生成のためのLLVMを使わずにターゲットとなるWebAssemblyバイナリを生成するため、Kotlin/Nativeよりも高速なコンパイルが可能とされています。

ただし現時点でKotlin/Wasmを利用するには、WebAssemblyのガベージコレクション機能が要求されるため、Google ChromeもしくはFirefoxで開発者向けのフラグを操作してWebAssemblyのガベージコレクション機能を設定する必要があるとのことです。

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

今回、Kotlin/Wasmに合わせてFirefoxでもWebAssemblyのガベージコレクション機能を実装中であることが明らかになりました。

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

マルチプラットフォーム対応を進めるKotlin

KotlinはJavaVM言語として登場し、2017年にAndroidの正式な開発言語になったことで急速に注目度を高めました。

参考:[速報]「Kotlin」がAndroidの正式な開発言語に。開発元のJetBrainsとGoogleが「Kotlin財団」の設立も計画。Google I/O 2017

その後、Kotlinの開発元であるJetBrainsは、iOSやWindowsアプリケーションの開発に対応するKotlin/Nativeや、サーバアプリケーションの開発に対応するKotlin/JVM、Webアプリケーションの開発に対応しJavaScriptを生成するKotlin/JSなどマルチプラットフォームに対応した言語への進化を進めてきました。

Kotlin/WasmはそうしたKotlinのマルチプラットフォーム戦略の1つです。

現在、WebAssemblyアプリケーションを開発する言語としてRustやGo言語が人気ですが、Kotlinも将来その中に入ることが期待されます。そしてJavaVMをベースとしてきたプログラミング言語がWebAssemblyに対応することは注目に値するのではないでしょうか。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
Rust言語用のIDE「RustRover」をJetBrainsがプレビュー公開。コード補完、デバッガ、パフォーマンス分析など
Rust
2023-09-14 01:36
日本企業のIT調達に重大な影響が出る恐れ–ガートナー
IT関連
2022-08-05 16:55
約66%の組織がゼロトラストを積極的に導入–フォーティネット調査
IT関連
2023-09-14 14:03
AWS、コードレビュー自動化の「CodeGuru Reviewer」に新機能–Log4Shellに類似した脆弱性検出
IT関連
2022-02-19 11:31
Ruby30周年イベント(後編):まつもと氏「Static Compiler for Ruby」を作りたい。道具立ては揃ってきた
Ruby
2023-03-03 08:33
山梨県、ビッグデータ分析で来訪者数予測モデルを構築–都市公園の活性化を促進
IT関連
2022-07-08 09:39
「iOS 16」にあれば便利と思える機能を考える
IT関連
2022-04-17 14:44
NEC、「AWS Outposts」を導入–共創活用向けは国内初
IT関連
2023-07-09 15:00
サムスン、12nmクラスDDR5 DRAMを発表–2023年から量産へ
IT関連
2022-12-24 21:23
仕事の未来–仕事場、勤務時間、従業員の意識の変化
IT関連
2022-04-19 09:19
「Windows 10 Home/Pro」のダウンロード販売、1月31日に終了へ
IT関連
2023-01-24 03:03
小児科医や助産師にオンラインで悩み相談 子供の健康守る「キッズ・パブリック」
IT関連
2021-06-10 13:49
Preferred Roboticsが6億円調達、旭化成ホームズと家庭向け自律移動ロボ開発や三井住友銀行と自律移動ロボの決済機能開発
IT関連
2022-03-23 07:56
Googe Sheets、暗号化されたExcelファイルの読み込みに正式対応。クライアントサイドの暗号化で
Google
2024-02-28 19:03