Files
hakorune/docs/development/roadmap/phases/phase-10
Moe Charm c13d9c045e 📚 Phase 12: Nyashスクリプトプラグインシステム設計と埋め込みVM構想
## 主な成果
- Nyashスクリプトでプラグイン作成可能という革命的発見
- C ABI制約の分析と埋め込みVMによる解決策
- MIR/VM/JIT層での箱引数サポートの詳細分析

## ドキュメント作成
- Phase 12基本構想(README.md)
- Gemini/Codex先生の技術分析
- C ABIとの整合性問題と解決策
- 埋め込みVM実装ロードマップ
- 箱引数サポートの技術詳細

## 重要な洞察
- 制約は「リンク時にC ABI必要」のみ
- 埋め込みVMでMIRバイトコード実行により解決可能
- Nyashスクリプト→C ABIプラグイン変換が実現可能

Everything is Box → Everything is Plugin → Everything is Possible!
2025-08-30 22:52:16 +09:00
..

Phase 10: JIT実装とセルフホスティング

🎯 Phase 10の全体像

Phase 10は、Nyashの実行性能を大幅に向上させるJIT実装と、言語の成熟度を示すセルフホスティングを実現します。

📊 実装優先順位

1 メイン実装: Cranelift JIT

phase_10_cranelift_jit_backend.md

  • VMとのハイブリッド実行ホットパス検出→JIT化
  • 実装期間: 2-3ヶ月
  • 目標: ホットパスで2倍以上の高速化

🌟 革新的機能: GC切り替え可能ランタイム

phase_10_4_gc_switchable_runtime.md

  • 世界初実行時にGCモード切り替え可能
  • 開発時はGCオンで快適、本番はGCオフで高速
  • 実装期間: 2-3ヶ月Cranelift JIT後
  • 技術的にCodex GPT-5が実現可能性を確認済み

2 並行プロジェクト: セルフホスティング

phase_10_5_core_std_nyash_impl.md

  • String/Array/MapをNyash自身で実装
  • Rust依存の段階的削減
  • 実装期間: 1-2ヶ月

3 実戦テスト: アプリケーション移植

phase_10_app_migration.md

  • Tinyproxy: ゼロコピー判定機能の検証
  • Chip-8エミュレータ: fini伝播とweak参照の実戦テスト
  • kiloエディタ: メモリ効率の「うっかり全体コピー」検出

🚫 延期プロジェクト

Phase 11: LLVM AOT Backend - 将来の研究開発として分離

🛤️ 実装ロードマップ

Phase 9.79b (現在)
    ↓
Phase 10.0: Cranelift JIT基盤構築
    ├→ Phase 10.1-10.3: JIT実装・最適化
    ├→ Phase 10.4: GC切り替え可能ランタイム ← NEW!
    └→ Phase 10.5: セルフホスティング(並行)
    ↓
Phase 10.9: アプリケーション移植で実戦検証
    ↓
Phase 11: LLVM AOT研究将来

📈 期待される成果

  1. 実行性能: インタープリタ比100倍、VM比2-3倍の高速化
  2. 言語成熟度: 基本コンテナのセルフホスティング達成
  3. 実用性検証: 実アプリケーションの移植による実戦テスト

🔗 関連ドキュメント