Go言語1.21で、WebAssembly System Interface(WASI)の実験的サポートへ

今回は「Go言語1.21で、WebAssembly System Interface(WASI)の実験的サポートへ」についてご紹介します。

関連ワード (発生、簡単、重宝等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


Googleが中心となってオープンソースで開発されているGo言語の次期バージョン「Go 1.21」では、WebAssembly System Interface(WASI)が実験的にサポートされることが明らかになりました。

これによりGo言語で簡単にファイルアクセスなどOSの主要なAPIを呼び出しつつ、特定のOSに依存しないポータブルな実装のWebAssemblyアプリケーション開発の実現が期待されます。

Go 1.21 Release Candidate 3 is released!

Run it in dev! Run it in prod! File bugs! https://t.co/Ul1xGhvlkf

Announcement: https://t.co/5Ncs1od4Vj

Download: https://t.co/mwRBIC7g7P#golang pic.twitter.com/dlBqPZPcco

— Go (@golang) July 14, 2023

Go言語はサポートするOSやCPUの種類をそれぞれ「GOOS」と「GOARCH」の値で示しています。例えばWindowsのGOOS値は「windows」、CPUを示す「GOARCH」には32ビットx86を示す「386」や64ビットx86やAMD64を示す「amd64」などがあります。

WASIのサポートでは、GOOSがWASIバージョン1を意味する「wasip1」、GOARCHはこれまでのGoのWebAssemblyサポートと同じ「wasm」となります。

Go 1.21は現在リリース候補版(RC)3で、8月に正式版がリリースされる予定です。

WebAssembly System Interface(WASI)とは

Go言語はGo言語は、WindowsやmacOS、Linux、FreeBSD、iOS、Androidなど、さまざまなOSやCPUに対応したバイナリを生成できる機能を備えており、2018年4月にはこれらに加えてWebAssemblyのサポートも明らかになりました。

しかしWebAssemblyでアプリケーションを作る場合、ほぼ必ずファイルシステムAPIなどOSへのアクセスなどが発生します。

アプリケーションからOSを呼び出すAPIはOSに依存するため、OSを呼び出すWebAssemblyアプリケーションは基本的にそのOSでしか動かないOS依存のアプリケーションになってしまいます。

そこで登場したのが、WebAssemblyのアプリケーションに対してOSのシステムコールを抽象化することでOS依存をなくし、ポータブルなWebAssemblyアプリケーションを実現する業界標準仕様のAPI「WebAssembly System Interface」(WASI)です。

WASI対応のWebAssemblyアプリケーションを、WASI対応のWebAssemblyランタイム上で実行すれば、そのWebAssemlbyアプリケーションはOSにすることなく、WebブラウザでもWindowsやMacなどのデスクトップでも、Linuxなどのサーバサイドやエッジでも動くポータブルなもの(WebAssemblyバイナリ)となります。

Go言語がWASIに対応するWebAssemblyファイルを生成できるようになれば、WASI対応のアプリケーション開発を比較的容易に行えるプログラミング言語として重宝されることになりそうです。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
ギグカンパニーが労働者の身分をめぐりマサチューセッツ州でも住民投票を画策
シェアリングエコノミー
2021-08-05 22:20
グーグル、インドの通信大手Bharti Airtelに最大10億ドル投資へ
IT関連
2022-02-01 02:28
空飛ぶクルマ・eVTOLのテトラが新機種Mk-5の7月末予約販売開始を発表、開発と人材育成で福島県南相馬市と連携協定
モビリティ
2021-07-09 02:41
2025年に4000量子ビット超を目指す–日本IBMが示す量子プロセッサーの工程表と意義
IT関連
2022-07-02 14:08
ソーシャルゲーム用動画インフラの構築を目指すPowderが14.5億円を調達
ゲーム / eSports
2021-02-12 09:04
第45回:列伝5人目「クラウドCIO型ひとり情シス」
IT関連
2022-09-07 00:33
16歳〜22歳は無料使い放題、傘のシェアリングサービス「アイカサ」が「U22応援プラン」を開始
シェアリングエコノミー
2021-06-26 05:44
3Dプリントによる次世代小型バイオリアクターの開発でStämm Biotechが約20億円調達
IT関連
2022-03-02 18:51
マイクロソフト、セキュリティ企業Mandiantの買収を検討か
IT関連
2022-02-11 22:33
ポーラ・オルビスHD、クラウドERPでグローバル経営基盤を刷新
IT関連
2022-04-19 07:35
食べチョクが7月の大雨被害を受けた生産者のサポートを開始、特集コーナーを新規開設し販促を強化
フードテック
2021-07-14 19:04
HPE Aruba、セキュリティなど3分野に拡大するトライアングル戦略を示す
IT関連
2023-09-15 06:17
NRIがAWSジャパン協力のもと、アナリティクスプロジェクト向けキットを開発
IT関連
2021-04-22 12:27
「CEATEC 2021」はリアル・オンラインの両方で開催 現実の会場は幕張メッセ
企業・業界動向
2021-03-19 03:43