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

今回は「「PyScript」はJavaScriptのようにPythonコードをHTML内に記述して実行可能、Anacondaがオープンソースで公開」についてご紹介します。

関連ワード (対応、文書、計算処理等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


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 to https://t.co/n4OoeBD46z for more information.

— Anaconda (@anacondainc) April 30, 2022

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

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対応、主要ブラウザChrome/Firefox/Edge/Safariで整う。Webアプリの開発言語としてJavaScript以外の選択肢は広がるか?

COMMENTS


Recommended

TITLE
CATEGORY
DATE
IT関連書の販売実績、「Python」「ITパスポート」「テレワーク」に伸び AIと子どもプログラミングは沈静化
企業・業界動向
2021-06-29 16:52
AWS、Graviton 2ベースのAmazon Aurora正式サービス開始。最大で35%の価格性能比が向上と
ARM
2021-03-15 22:04
富士通グループ、「Sansan」と「Sansan Data Hub」を導入–顧客アプローチの変革図る
IT関連
2021-04-23 03:18
Appleの「AirTag」は紛失防止タグの“黒船”か 既存製品との違いをチェック (1/2 ページ)
くわしく
2021-04-22 11:11
凸版印刷、ビジネス向けメタバース基盤を開発–インテリアの風合い再現
IT関連
2022-02-23 20:06
米航空局がRocket Labに打ち上げ再開の許可、ミッション失敗から1カ月足らずで
宇宙
2021-06-04 10:10
世界に遅れる日本企業のDX 打開のカギは? AI研究者の東大・松尾教授が語る
くわしく
2021-04-16 13:39
IT企業は地域DXの推進でブランドイメージ向上を競え
IT関連
2022-02-04 14:31
業界向けデータクラウドを拡大–Snowflakeが国内の事業戦略
IT関連
2022-04-28 00:08
マイクロソフト、「Edge」のセキュリティを高める「SDSM」機能をテスト
IT関連
2021-08-06 13:02
Slack、Discordのような気軽な音声チャット機能「Huddle」を追加
アプリ・Web
2021-07-02 13:06
ユーザーのプライバシーを護るGoogle Play「セーフティセクション」の詳細をグーグルが発表
ソフトウェア
2021-07-30 10:50
NFCラベルを金属的な見た目に加工、通信性能は据え置き 凸版印刷が新技術
企業・業界動向
2021-06-20 00:12
機械学習でミツバチに学ぶドローン 障害物回避しスムーズに着地 :Innovative Tech
トップニュース
2021-03-22 22:11