編集部からのお知らせ
EDRの記事まとめダウンロードはこちら
電子契約の記事まとめDLはこちら
海外コメンタリー

「Python」の弱点やそのとらえ方--生みの親、グイド・ヴァンロッサム氏が語る

Liam Tung (Special to ZDNet.com) 翻訳校正: 村上雅章 野崎裕子

2021-05-31 06:30

 世界的に普及しているプログラミング言語Pythonの生みの親であるGuido van Rossum氏が、ブラウザーやモバイル機器上で同言語の普及がそれほど進んでいない理由について、そしてJuliaといった将来的にライバルになりそうな言語について語った。

 かつて「優しい終身の独裁者」(BDFL)と呼ばれていたvan Rossum氏は2020年11月よりMicrosoftのディスティングイッシュト・エンジニアとして勤務し、CPythonコミュニティーに対する同社の貢献を支援している。CPythonコミュニティーは、van Rossum氏が生み出したPythonを機械学習(ML)やデータサイエンスの興隆という波に乗せ、今日最も人気が高いプログラミング言語の1つに押し上げた功績を有している。

 同氏はここ数週間の間に、「PyCon 2021」カンファレンスに合わせ、CPythonの実行速度を倍にする計画を含む、いくつかの発表を行った。またMicrosoftは、このインタープリター型言語の「パフォーマンスを向上させるための取り組みを推進する」ために、van Rossum氏の率いる小規模なPythonチームに対して資金を提供している。

 Pythonは「NumPy」やGoogleの「TensorFlow」といったライブラリーによってML分野で、そしてバックエンドサービスの自動化で圧倒的な地位を得ている一方、モバイルアプリ開発といった分野では精彩を欠いている。同氏によると、実際のところPythonは、動作する上でハイエンドのハードウェアを必要としているわけではないが、その種の環境で使用される傾向にあり、モバイルアプリやウェブアプリではバックエンドサービスでの使用にとどまっているという。

 なぜだろうか。van Rossum氏によるとその理由は単に、Pythonが大量のメモリーとハードウェア能力を消費するためだという。こういった理由があるためPythonはおそらく、ウェブサイト上でよりパワフルなアプリケーションを実行するために現在策定作業が進められている「WebAssembly」が普及しても、ブラウザー内で使われることはないだろうと同氏は述べた。

 van Rossum氏は先ごろ公開された「Microsoft Reactor」のQ&A動画で、Pythonによるモバイルアプリ開発は「ちょっとした弱点」に相当すると述べた。

 同氏は「Pythonでモバイルアプリを開発できれば素晴らしいと思う。そういったことの実現に取り組んでいる人たちもいるが、CPythonはワークステーションやデスクトップPC、サーバーといった環境上での動作を念頭に置いて開発されてきた30年の歴史があるため、同様の環境を必要としており、ユーザーもそういったことを想定している」と述べた。

 同氏は「『Android』あるいは『iOS』を搭載したタブレットでCPythonのクロスコンパイルを実行した人であれば、大量のリソースが消費されることを実感しているはずだ」と述べ、「モバイルOSが期待しているアプリと比較すると、Pythonは巨大で遅い。また消費電力も大量であるため、Pythonでコーディングすると、すぐにバッテリーが底を尽くとともに、あっという間にメモリーを使い切ることになるだろう」と続けた。

 しかしPythonはバックエンドのウェブサービス用途で普及していると同氏は述べた。その一方で同氏は、フロントエンドのウェブ開発ではJavaScriptの利用が圧倒的に多いことも認めている。実際のところ、Microsoftが生み出したJavaScriptのスーパーセットである「TypeScript」がウェブ開発者らの間で普及してきている

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

特集

CIO

モバイル

セキュリティ

スペシャル

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]