Phase 12: TypeBox革命とJIT制御フロー修正 - セルフホスティングへの道

## 🔥 TypeBox ABI革命(セルフホスティング実現)
- Nyash ABIをC実装TypeBoxで提供する画期的設計
- Gemini/Codexの深い考察を反映した詳細仕様書作成
- 16バイトアライメント、セレクターキャッシング、弱参照等の具体実装案
- Rust依存を完全排除し、セルフホスティングへの明確な道筋を確立

## 🎯 JIT制御フロー根本修正(ChatGPT5の25分長考の成果)
- ブロック挿入点の明確化: switch_to_block()で各ブロックemit開始時に切替
- シール戦略の簡潔化: br/jump直後のseal撤廃、最終シールに一本化
- PHI最小経路実装: ブロック引数の事前プリスキャン、後付けPHI問題解決
- Cranelift制約対応: 開始済みブロックへのappend禁止を正しく実装

## 📚 ドキュメント更新
- Phase 12全体のセルフホスティング対応更新
- NYASH-ABI-C-IMPLEMENTATION.md: 実装仕様書作成
- gemini-codex-deep-thoughts.md: AI専門家の考察アーカイブ
- 各種README/TASKS更新でセルフホスティング要件追加

##  テスト結果
- mir-branch-ret: OK (Result: 1)
- mir-phi-min: OK (Result: 10)
- mir-branch-multi: OK (Result: 1)

「Everything is Box」の究極形態:ABIすらBoxとして扱う革命的設計!

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Moe Charm
2025-09-02 11:18:19 +09:00
parent de99b40bee
commit b05d5dd7ca
13 changed files with 949 additions and 203 deletions

View File

@ -1,14 +1,15 @@
# 🚀 Nyash開発マスタープラン
Status: Active Development
Last Updated: 2025-08-26
Purpose: Claude×Copilot×ChatGPT協調開発の総合ロードマップ
Last Updated: 2025-09-02
Purpose: Claude×Copilot×ChatGPT×Gemini×Codex協調開発の総合ロードマップ
## 📍 現在位置
- 現在フェーズ: Phase 10.5b ネイティブビルド基盤の固めMIR→VM→AOTの足固め
- 次フェーズ: Phase 10.5c Handle-First PluginInvokePython統合の実装着手
- 備考: 旧10.1系10.1c/dは「PythonをNyashで動かすフェーズ」の設計資料Archived。順番を入れ替え、先にネイティブビルド基盤を完成させています。
- 現在フェーズ: Phase 12 TypeBox統合ABI・セルフホスティング準備
- 最新成果: 🔥 **Nyash ABIをC実装TypeBoxで提供** - Rust依存排除への道
- 次フェーズ: Phase 12.0.5 Nyash ABI C実装開始
- 備考: GeminiとCodexの深い考察により、セルフホスティングへの明確な道筋が見えました。
## 🗺️ フェーズ概要
@ -23,9 +24,9 @@ Purpose: Claude×Copilot×ChatGPT協調開発の総合ロードマップ
| 10 | 📅予定 | Cranelift JIT主経路 | [phase_10_cranelift_jit_backend.md](phase-10/phase_10_cranelift_jit_backend.md) |
| 11 | ✅完了 | LLVM統合・AOT実装依存重い | [phase-11/](phase-11/) |
| 11.8 | 📅予定 | MIR整理Core-15→Core-13 | [phase-11.8_mir_cleanup/](phase-11.8_mir_cleanup/) |
| 12 | 🔄進行中 | MIR Core-15確定・プラグイン統一 | [phase-12/](phase-12/) |
| 12 | 🔄進行中 | TypeBox統合ABI・セルフホスティング準備 | [phase-12/](phase-12/) |
| 12.5 | 📅予定 | MIR15最適化戦略 | [phase-12.5/](phase-12.5/) |
| 15 | 🌟将来 | セルフホスティング(Nyashコンパイラ | [phase-15/](phase-15/) |
| 15 | 🌟実現可能 | セルフホスティング(C実装ABI経由 | [phase-15/](phase-15/) |
---
@ -157,17 +158,21 @@ nyash bid gen --target llvm bid.yaml # AOT用declare生成LLVM実装時
---
### 🎯 Phase 12: MIR Core-15確定・プラグイン統一(進行中)
### 🎯 Phase 12: TypeBox統合ABI・セルフホスティング準備(進行中)
**Summary**:
- MIR Core-1514の最終確定
- プラグインシステムの3層統一
- Nyash ABI設計
- TypeBox革命型情報もBoxとして扱う統一設計
- C ABI + Nyash ABI完全統合
- 🔥 **Nyash ABIのC実装**でRust依存排除
**3層プラグインシステム**:
1. Nyashスクリプトプラグイン.nyash
2. C ABIプラグイン高速・安定
3. Nyash ABIプラグイン将来拡張
**革命的成果**:
1. TypeBoxプラグイン間Box生成を可能に
2. 統合ABIC/Nyash ABIをシームレス統合
3. **セルフホスティング**C実装ABIで実現可能
**AI専門家の評価**:
- Gemini「技術的妥当性が高く、哲学とも合致した極めて優れた設計」
- Codex「16バイトアライメント、セレクターキャッシング等の具体案」
---
@ -229,12 +234,30 @@ nyash bid gen --target llvm bid.yaml # AOT用declare生成LLVM実装時
---
## 🌟 Phase 15: セルフホスティング(実現可能!)
**革命的発見**: Nyash ABIをC実装TypeBoxで提供することで、Rust依存を排除
### 実現への道筋(明確化)
1. **Phase 12.0.5**: Nyash ABI C Shim実装Rust FFI経由
2. **Phase 13**: C実装の完全化基本型・参照カウント
3. **Phase 14**: NyashでABI再実装AOTでC ABI公開
4. **Phase 15**: Nyashコンパイラ自身をNyashで実装
### 技術的革新
- **TypeBox哲学**: ABIすらBoxとして扱う究極の統一
- **C ABI基盤**: 最も安定した普遍的インターフェース
- **段階的移行**: 既存Rust実装との共存期間を確保
---
## 📊 進捗管理・コミュニケーション
### 🤝 協調開発ルール
- ✅ 大きな変更前にはdocs/CURRENT_TASK.mdで情報共有
- ✅ ベンチマーク機能は最優先で維持
- ✅ 競合発生時は機能優先度で解決
- ✅ AI専門家Gemini/Codexの深い考察を活用
### 品質保証
- ✅ cargo check でビルドエラーなし