Movatterモバイル変換


[0]ホーム

URL:


Publickey
×

「PyScript」はJavaScriptのようにPythonコードをHTML内に記述して実行可能、Anacondaがオープンソースで公開

2022年5月9日

Pythonの主要なディストリビューション「Anaconda」などを提供しているAnaconda社は、HTML文書の中にJavaScriptと同じようにPythonのコードを記述し、実行可能にする「PyScript」をオープンソースで公開しました

Did you hear the news from PyCon!? We are thrilled to introduce PyScript, a framework that allows users to create rich Python applications IN THE BROWSER using a mix of Python with standard HTML! Head tohttps://t.co/n4OoeBD46z for more information.

— Anaconda (@anacondainc)April 30, 2022

下記がPyScriptのコードの例です。まるでJavaScriptのように<py-script>タグを用いてHTMLの中にPythonのコードを記述しています。

<html>  ...  <py-script> print('Now you can!') </py-script></html>

Webブラウザ上にPythonインタプリタ

PyScriptによるPythonコードの実行はWebAssemlby化されたPythonインタプリタによってWebブラウザ上で実行されるため、サーバ側に特別な仕組みを持つ必要はありません。

PyScriptのデモページも用意されており、Hello Worldから始まり、ToDoアプリや統計とグラフ化などまで、さまざまなアプリケーションの記述が可能なことが示されています。

pyscript01
pyscript02

一般的なPythonライブラリ群にも対応するとのことで、Webブラウザ上でPythonの得意な計算処理も可能になることが期待されます。

PythonインタプリタをWebAssemblyで実装した「Pyodide」が中心

前述の通り、PyScriptはWebAssembly化された代表的なPythonインタプリタ実装である「Pyodide」(パイオダイドと発音されているようです)を用いて開発されています。

PyodideはMozillaが2018年に開発を開始したプロジェクトで、Pythonのリファレンス実装であるCPythonのソースコードに最小限の変更を行い、EmscriptenでWebAssemblyへコンパイルできるようにすることで、WebブラウザなどのWebAssembly実行環境上で事実上標準と同じPythonインタプリタが実行できることを目指しているプロジェクトです。

参考:PythonインタプリタをWebAssemblyへコンパイル、Webブラウザで稼働するPython環境「Pyodide」。Mozillaが開発中

PyScriptはこのPyodideを中心に、HTMLやJavaScriptとの連携機能などを実装したものです。

pyscript03

WebAssemblyによるインタプリタの実装はPythonだけでなくRubyでも実現しています。PyScriptができるなら、RubyScriptも技術的に可能でしょう。

参考:WebAssembly/WASIに対応した「Ruby 3.2 Preview 1」公開。WebブラウザでRubyが動く世界がやってくる

PyScriptはビジョンとしてPython以外の言語にも対応する方向性を示しています。今後Webブラウザでは用途に応じてJavaScript以外の言語を選んでプログラミングする、ということが広がっていくのでしょうか。

関連記事

PublickeyではWebAssemblyが注目され始めた2017年に、JavaScript以外の選択肢が広がる可能性について記事を書いていました。

あわせて読みたい

WebAssemblyプログラミング言語Python

このエントリーをはてなブックマークに追加
fbシェア
Xポスト
Feedly


≫次の記事
ついにKubernetesからDockershimが正式に削除、Docker Engineのサポートが終了。今年最初のKuberenetes 1.24正式版がリリース

≪前の記事
GitHub、コードのコントリュビュータに2要素認証を義務化、2023年末までに。パスワードレスへの対応も積極化


タグクラウド

クラウド
AWS /Azure /Google Cloud
クラウドネイティブ /サーバレス
クラウドのシェア /クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript /Java /.NET
WebAssembly /Web標準
開発ツール /テスト・品質

アジャイル開発 /スクラム /DevOps

データベース /機械学習・AI
RDB /NoSQL

ネットワーク /セキュリティ
HTTP /QUIC

OS /Windows /Linux /仮想化
サーバ /ストレージ /ハードウェア

ITエンジニアの給与・年収 /働き方

殿堂入り /おもしろ /編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで :Feed

最新記事10本


feed
Feed / RSS
X/Twitter
Facebook
About us

[8]ページ先頭

©2009-2025 Movatter.jp