TypeScriptをコンパイルしてWebAssemblyバイナリに、実現を目指す「TypeScript Compilation SIG」をByteCode Allianceが発表

今回は「TypeScriptをコンパイルしてWebAssemblyバイナリに、実現を目指す「TypeScript Compilation SIG」をByteCode Allianceが発表」についてご紹介します。

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

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


WebAssemblyの普及と発展を目的とするByteCode Allianceは、TypeScriptのコードをコンパイルしてWebAssemblyバイナリを生成できるようにすることを目指すスペシャルインタレストグループ「TypeScript Compilation SIG」を発表しました。

figApril Bytecode Alliance Community Streamのアジェンダ(赤線はPublickeyによる)

WebAssemblyの仕様策定はW3Cが行っており、ByteCode AllianceはそのWebAssemblyを基盤として、クロスプラットフォーム対応を実現するAPI群のWASI(WebAssembly System Interface)やコンポーネントモデル、ガベージコレクション対応などの拡張、およびそれらの事実上のリファレンス実装であるWebAssemblyランタイムWasmTimeの開発などを行っています。

参考:WebAssemblyをあらゆるプラットフォームでセキュアに実行できるようにする「Bytecode Alliance」発足。インテル、Mozilla、Red Hatなど

TypeScriptをWebAssemblyにコンパイルできるようにする

TypeScript Compilation SIGは3月にプロポーザルが公開されていました。

このプロポーザルによると、TypeScript Compilation SIGの主な目的は、TypeScriptプログラムをWebAssemblyにコンパイルできるようにし、Webブラウザとスタンドアロンの両方のWebAssemblyランタイムで実行可能にするための適切なソリューションを、WebAssemblyガベージコレクション(WasmGC)の仕様提案に基づいて記述し改良すること、とされています。

活動の範囲は、TypeScriptのWebAssemblyへのコンパイル、Any typeなどTypeScriptの言語仕様をサポートするために必要なランタイムAPIの定義、動的型付け言語のサポートを強化するためにWebAssemblyをどのように発展させるかの検討などとなっています。

すでにTypeScriptライクな「AssemblyScript」と呼ばれるプログラミング言語では、WebAssemblyへのコンパイルを実現しています。しかしTypeScript Compilation SIGではTypeScript言語のフォークによる実現は意図しておらず、言語仕様のサブセットの適用や型システムの追加、ライブラリの利用など拡張によって実現し、それをTypeScriptのコアチームと連携しつつTypeScriptのアップストリームに反映すると説明しています。

WasmGCの登場でTypeScriptだけでなく対応言語が広がる

WebAssemblyにガベージコレクション機能を追加し、新しいプログラミング言語に対応を広げる動きはTypeScriptに限ったものではありません。

WebAssemblyはこれまでガベージコレクション機能を備えておらず、そのためにプログラマが完全にメモリを管理するC++や、シンプルな仕組みで自動的にメモリ管理が行われるRustのようなプログラミング言語などをコンパイルし生成することが一般的でした。

WebAssemblyにガベージコレクション機能が追加されることで、JavaやPythonやRubyなど、ランタイムが自動的にメモリ管理を行うプログラミング言語などのWebAssembly対応が期待できます。

すでにWebAssemblyのガベージコレクション対応の実装は始まっており、それを前提にDart/FlutterやKotlin/Wasmなどの言語やフレームワークがWebAssembly対応を表明しています。

  • WebAssemblyにガベージコレクション機能が登場、Chrome 111で試験的実装に。Dartなど高級言語のWebAssembly対応へ前進
  • FirefoxもWebAssemblyのガベージコレクション機能を実装中であることが明らかに
  • SafariもWebAssemblyのガベージコレクション機能の実装に着手。Technology Preview 167で明らかに

TypeScriptはWebアプリケーションの開発を中心に幅広く使われているプログラミング言語です。TypeScriptのプログラムがWebAssemblyへコンパイル可能になれば、WebAssemblyの普及に大きく貢献することは確実でしょう。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
Microsoft、自社製RPAツールを全Windows 10ユーザーに無償提供 マウスクリックやキーボード入力をGUIで自動化 :Microsoft Ignite 2021
ロボット・AI
2021-03-04 04:26
異音検知プラットフォームや議事録自動作成システムを手がける音声認識AIスタートアップ「Hmcomm」が4.2億円調達
人工知能・AI
2021-08-11 21:38
時給5000円、KDDIが「povo」の新サービスを共同開発するユーザー募集 業務委託で
キャリア・しごと
2021-04-14 05:01
アイロボットが自動ゴミ収集機付属で10万円以下の掃除ロボ「ルンバi3」発表、数カ月はゴミ捨て不要
ハードウェア
2021-02-18 16:01
患者の負担を軽減する液体生検を用いた白血病遺伝子検査提供のLiquid Mineが資金調達
VC / エンジェル
2021-02-04 14:40
セイコーエプソン、EDIクラウドの採用で業務やITシステムを標準化
IT関連
2024-03-22 05:42
【コラム】エネルギーエコシステムは不安定な未来に適応する「エネルギーインターネット」の実現に向かうべきだ
EnviroTech
2021-07-09 13:18
Visual Studio CodeがMarkdownのサポートを強化。ファイルのドロップでリンクを自動作成、見出しへの参照一覧など。Visual Studio Code 1.67(April 2022)
Visual Studio
2022-05-10 11:35
これからのワークスタイルはどうあるべきか–IBMとシスコの取り組みから探る
IT関連
2024-02-09 23:14
キヤノンMJ、請求書受け取りのクラウドサービスを開始
IT関連
2023-04-12 07:59
企業のコンプライアンス点検の質問を自動化するKintentがシードで4.4億円獲得
ソフトウェア
2021-04-05 04:22
レーザー測距技術LiDAR活用し人の屋内位置測位技術の研究開発に取り組むHULIXが1.3億円調達
ソフトウェア
2021-01-29 06:29
Webカメラに指をかざすだけで本人確認 日立が非接触の静脈認証方式を開発
セキュリティ
2021-03-03 18:46
KDDI、障害は「ほぼ復旧」と発表–過剰通信で当初見通しより遅れ
IT関連
2022-07-06 06:53