このプロジェクトについて

Edge Pythonは、Pythonのサブセット向けのサンドボックス化されたランタイムであり、単一パスのSSAバイトコードコンパイラとスレッドコードスタック仮想マシンを組み合わせています。実装には、NaNボックス化された値、インラインキャッシュ、スーパー命令融合、純粋関数メモ化、マークスイープガベージコレクタ、完全なインタプリタスナップショット、カバレッジガイド付きファジングが含まれます。 この言語は、クラス、async/await、パターンマッチング、およびコンパイル時に解決されるインポートをサポートしています。プログラムはデフォルトでサンドボックス内で動作し、`edge.json`モジュール設定を通じて明示的に宣言された場合にのみ、ファイル、ネットワーク、または環境にアクセスできます。 デプロイターゲットには以下が含まれます: - `<edge-python>`カスタム要素を介したWebAssemblyモジュールとしてのブラウザ実行 - macOS、Linux、またはWSLにインストールされた`edge`バイナリを介したCLI実行 - `edge build`によって生成されるスタンドアロンコンパイル済みバイナリ - `edge actor`によって管理される協調アクターのプール リポジトリはいくつかのコンポーネントに整理されています:ルートクレートにはエンジン、レキサー、パーサー、VM、およびWebAssemblyエクスポートが含まれます。`cli/`ディレクトリは、JavaScriptモジュール用のStarlingMonkeyとともにwasmtime上で`compiler.wasm`を実行する`edge`バイナリを提供します。`std/`には標準パッケージが含まれます。`pdk/`と`abi/`は`.wasm`プラグインを作成するためのキットを提供します。`lang/`はエンジン上でカスタムスクリプト言語を構築する方法を示しています。`fuzz/`にはファザーが含まれています。 ドキュメント、クイックスタートガイド、CLIリファレンス、モジュール一覧、アクターパターン、および埋め込み手順はedgepython.com/docsで入手できます。