1722381671
2024-07-30 18:55:10
Porffor は、JS コードを事前に WebAssembly またはネイティブにコンパイルする独自の JS エンジン/コンパイラ/ランタイムです。
現時点では、本格的な使用ではなく、研究を目的としており、非常に制限されています。
Porffor の WebAssembly 出力は、既存の JS -> Wasm プロジェクトに比べてはるかに高速でサイズも小さくなります。これは、Porffor がインタープリターをバンドルするのではなく、JS AOT をコンパイルするためです。
- サイズ: 32倍小さい Javy より (~1.3MB -> ~40KB)
- Wasm パフォーマンス: 18倍高速 Javy より (~70m -> ~4m)
JS を事前にコンパイルすることで、Porffor は既存のソリューションのようにランタイムをパッケージ化するのではなく、実際のネイティブ バイナリにコンパイルできます。これにより、次のことが可能になります。
- バイナリサイズ 1000倍以上小さい (約90MB ->
- メモリ使用量 40倍以上少ない (約 50MB -> 約 1MB)
- パフォーマンス 最大3倍高速
ポルフォーは安全だ Wasm にコンパイルされ (その後ネイティブにコンパイルされます)、メモリセーフ言語 (JS) で記述されています。
Porfforはゼロから書かれた 既存の JS エンジンに基づくのではなく、AOT を念頭に置いています。唯一の依存関係は JS パーサーです。
PorfforはTypeScript入力をサポート面倒なトランスパイラのステップは必要ありません。TS ファイルを入力するだけです。
遊び場 Porfforはオンラインでも、現地でもお試しいただけます。 npm i -g porffor@latest && porf
パーサー
目標
テスト262 テスト262 公式の ECMAScript 適合テスト スイートです。Porffor は、各コミットで実行され、適合の進捗状況を追跡します。
3ヶ月
6ヵ月
史上最高
#紫