# Phase 12 × Nyash ABI 統合戦略

## 🎯 核心的発見

Phase 12（Nyashスクリプトプラグイン）とNyash ABI（多言語ブリッジ）は、**同じ統一インターフェースの内側と外側**だった！

## 🏗️ 統合アーキテクチャ

```
外部言語（Python/JS/C++/Rust等）
        ↓
┌─────────────────────────────────┐
│      Nyash ABI (C境界)          │ ← 3×u64構造体
│  NyashFunc統一呼び出し規約      │
├─────────────────────────────────┤
│    統一レジストリ・ディスパッチャ │
├─────────────────────────────────┤
│   BoxInterface (Rust内部)       │ ← trait実装
│   invoke/get_methods/init/drop  │
├─────────────┬─────────────────┤
│ Nyashスクリプト │ ネイティブ      │
│ プラグイン      │ プラグイン      │
└────────────┴─────────────────┘
```

## 🔧 実装フェーズ

### Phase 1: 基盤統合（1-2週間）
- BoxInterfaceにNyashFunc変換レイヤー追加
- NyashValue（enum）とNyashValue（struct）の相互変換
- method_idをmetadataフィールドに統合

### Phase 2: export box拡張（2-3週間）
```nyash
export box MyPlugin {
    // 以下を自動生成：
    // 1. BoxInterface実装
    // 2. NyashFunc extern "C"関数
    // 3. 型レジストリ登録
}
```

### Phase 3: 多言語バインディング（3-4週間）
- Python: `@nyash_plugin`デコレータ
- JavaScript: `NyashPlugin`クラス
- Rust: `#[nyash_abi]`マクロ
- C++: `NYASH_PLUGIN`マクロ

### Phase 4: 最適化（継続的）
- インライン値（整数/Bool）の高速化
- method_id による高速ディスパッチ
- JIT/AOTでの境界最適化

## 💡 革命的な統合効果

### 1. プラグイン開発の完全民主化
- **Nyashで書く**: ビルド不要、即座に実行
- **他言語で書く**: Nyash ABIで統一的に接続
- **相互運用**: NyashプラグインをPythonから、PythonプラグインをNyashから

### 2. エコシステムの爆発的拡大
```
従来: Rust/C++開発者のみ → 狭いエコシステム
統合後: 全言語の開発者 → 巨大エコシステム
```

### 3. 実装の簡潔性
- MIR変更最小（ExternCallのまま）
- 既存プラグイン後方互換（トランポリン自動生成）
- 段階的移行（nyash.tomlで制御）

## 📊 技術的シナジー

| Phase 12の強み | Nyash ABIの強み | 統合による相乗効果 |
|---------------|----------------|------------------|
| スクリプトで即開発 | 多言語対応 | どの言語でも即開発 |
| BoxInterface統一 | C ABI安定性 | 内外統一インターフェース |
| ホットリロード | メモリ安全 | 安全な動的更新 |
| 既存Box活用 | インライン最適化 | 高速かつ柔軟 |

## 🚀 次期アクション

1. **仕様統合**: BoxInterfaceとNyashFuncの正確なマッピング定義
2. **プロトタイプ**: 1つの既存プラグインで両方式を実装
3. **ベンチマーク**: 性能影響の測定（特にインライン値）
4. **ドキュメント**: 統合APIリファレンス作成

## 🌟 ビジョン

**「Everything is Box」が「Everything can be a Plugin」へ進化**

- Nyashで書いたコードが、そのままプラグイン
- どの言語で書いたコードも、Nyashプラグイン
- プラグインがプラグインを呼び、言語の壁が消える

これは単なる技術統合ではなく、**プログラミングの未来そのもの**。

---

*Phase 12とNyash ABIの統合により、史上最も開かれたプラグインエコシステムが誕生する。*