PyPy は 32-bit/64-bit x86 と 32-bit/64-bit ARM プロセッサで JIT コンパイルをサポートしています。 Windows、Linux、OpenBSD、Mac OS X で毎晩テストされています。

CPyExt と呼ばれる CPython C API 拡張のための互換性レイヤがありますが、不完全で実験的なものです。 C 共有ライブラリとのインターフェイスは、組み込みの C foreign function interface (CFFI) や ctypes ライブラリを使うのが望ましい。

HistoryEdit

PyPy は Psyco プロジェクトの後続で、Armin Rigo が 2002 年から 2010 年に開発した Python 用ジャストインタイム特化コンパイラである。 PyPyの目的は、Psycoにはなかったスコープを持ったジャストインタイム・スペシャライズド・コンパイラを持つことである。 当初、RPythonはJavaバイトコード、CIL、JavaScriptにもコンパイルできたが、これらのバックエンドは関心の低さから削除された。

PyPy は当初研究開発型のプロジェクトであった。 開発の成熟状態に達し、2007 年半ばに公式の 1.0 リリースを行い、次の焦点は CPython との互換性を高めた量産可能なバージョンをリリースすることでした。 PyPy の変更の多くはコーディングスプリントの間に行われました。

  • 2008年8月に、PyPy は Pylons, Pyglet, Nevow や Django などの人気のある Python ライブラリを実行できるようになりました。
  • 2010年3月12日、PyPy 1.2がリリースされ、スピードに焦点が当てられました。 これは、まだ安定していないものの、動作するジャストインタイムコンパイラを含んでいました。
  • 2011年4月30日にPyPy 1.5がリリースされ、CPython 2.7と互換性を持つようになりました。
  • 2013年5月9日にPyPy 2.0がリリースされ、ARMv6とARMv7のJITコンパイルにα品質のサポートを導入し、標準ライブラリにCFFIが含まれるようになりました。
  • 2014年6月20日、PyPy3が安定版として宣言され、よりモダンなPython 3との互換性が導入されました。 4952>
  • 2017年3月21日、PyPyプロジェクトはPyPyとPyPy3の両方のバージョン5.7をリリースし、後者はPython 3.5のベータ品質のサポートを導入しました。
  • 2018年4月26日、バージョン6.0がリリースされ、Python 2.7と3.5がサポートされました(Windowsではまだベータ品質です)。
  • 2019年2月11日、Python 2.7と3.5をサポートしたバージョン7.0がリリースされました。
  • 2019年10月14日、Python 3.6.9をサポートしたバージョン7.2がリリースされました。
  • 2019年12月24日、Python 3.6.9をサポートしたバージョン7.3がリリースされました。

FundingEdit

PyPy は、2004年12月から2007年3月にかけて特定目標研究プロジェクトとして欧州連合の資金援助を受けました。 2008年6月、PyPy は Google Open Source プログラムの一部であることを発表し、PyPy と CPython の互換性を高めることに注力することに同意しました。 2009年には、欧州連合の中小企業向け資金調達機関であるEurostarsが、「PYJIT – a fast and flexible toolkit for dynamic programming languages based on PyPy」と題するPyPyプロジェクトメンバーの提案を受け入れました。 PyCon US 2011 において、Python Software Foundation は、パフォーマンスと新しいバージョンの言語との互換性についての作業を継続するために PyPy に $10,000 の助成金を提供しました。 2013年の時点では、さまざまなサブプロジェクトが資金援助を行っている。 Python 3 バージョンとの互換性、数値計算のための最適化された NumPy の組み込みサポート、より良い並列処理を可能にするソフトウェア トランザクションメモリのサポートなどです。

コメントを残す

メールアドレスが公開されることはありません。