ニュース
Microsoft、「VS Code for the Web」でPythonコードやWebシェルを実行できる拡張機能をプレビュー公開:WebAssembly、WASIでインタープリタを実装
Microsoftは、Pythonコードを「VS Code for the Web」で実行できるようにする拡張機能と、Webシェル実行を可能にする拡張機能をプレビュー公開した。
Microsoftは2023年6月5日、C/C++で書かれたPythonインタープリタを使い、Pythonコードを「WebAssembly」(以下、Wasm)にコンパイルして「VS Code for the Web」で実行できるようにする拡張機能と、Webシェル実行を可能にする拡張機能をプレビュー公開した。
Pythonコード実行拡張機能
Visual Studio Code(以下、VS Code)を、ローカルにインストールせずにブラウザで実行できるVS Code for the Webは、ブラウザでコードの編集、コンパイル、実行、デバッグをサポートする。これらについては、ブラウザにはJavaScript実行エンジンが搭載されているので、JavaScriptやTypeScriptなどの言語では可能だったが、他の言語では困難だった。例えば、ブラウザでPythonのコードを実行するには、Pythonのインタープリタ実行エンジンが必要で、インタープリタは通常、C/C++で書かれている。
そこで、仮想マシン用のバイナリ命令形式のWasmに着目。現在、Wasm仮想マシンは最新のブラウザに組み込まれており、C/C++をWasmコードにコンパイルするためのツールチェーンが存在することから、今回の拡張機能を公開したという。
Microsoftは既にCPythonをWasmにコンパイルする作業を開始しており、調査の結果を下記動画で見ることができる。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- WebAssemblyでBashやCurlが動く、業界標準APIを拡張した「WASIX」を発表 Wasmer
Wasmerは、業界標準のAPI仕様である「WASI」を拡張してPOSIXに対応した新技術「WASIX」を発表した。WASIXを利用すれば、コードを修正することなく、既存アプリケーションをWebAssemblyで実行できる。 - C/C++でWebAssembly――「Emscripten」を体験する
第4回は、WebAssembly開発で人気のあるC/C++とEmscriptenによる開発事例を紹介します。標準的なC/C++の関数の出力をWebページに反映させる事例の他に、C/C++の関数をJavaScriptから呼び出す事例も紹介します。 - 「WebAssembly」は次世代のJava、Node.jsになる?――「Wasmコンテナ」をKubernetesで動かす
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、最近注目されている「WebAssembly」について復習しながら、WebAssemblyのアプリケーションをKubernetesで試す方法を紹介する。