Files
hakorune/docs/development/current/CURRENT_TASK.md

62 lines
3.6 KiB
Markdown
Raw Normal View History

# 🎯 CURRENT TASK - 2025-08-26Phase 9.79b Kickoff
コンテキストを最小化して、次フェーズへの導線だけ残すにゃ。
## ⏱️ 今日のフォーカスPhase 9.79b → 9.79b.3: Thunks+Poly-PIC
- 目的: Boxbuiltin/user/pluginを数値IDスロットvtable/thunk統一に移行し、Phase 10(JIT)への足場を確立する。
### 直近タスク(小さく早く)
1) 9.79b.1: Unified Registry IDs + Builder Slotting
- 型ID/メソッドスロットの導入(レジストリ)✅ 実装
- ユニバーサルメソッド低スロット予約0..3)✅ テストで不変確認
- Builderが解決可能なBoxCallに`method_id`を付与(未解決は遅延)✅ 実装/Printer表示
2) 9.79b.2: VM VTable Thunks + Mono-PIC
- `execute_boxcall`をvtable+thunkの単一路線へユニバーサル0..3のfast-path追加✅ スケルトン
- call-site単位のモモーフィックPICを追加Key設計とカウンタ導入・記録まで✅ スケルトン
- 次: 安定閾値での直呼び最適化InstanceBox関数名キャッシュ✅ 実装PIC=8で昇格
- PluginBoxV2 fast-pathmethod_id直叩き✅ 最小TLVstring/int/handle
- builtin/plugin/user のslot seed4〜✅ lazy seed/予約
- キャッシュ無効化version by label✅ loader/宣言でbump導線
3) 9.79b.3: VM VTable Thunks + Poly-PIC本実装
- TypeMetaThunkテーブル正式化slot→thunk→target: builtin/user/plugin 統一in_progress
- PICをpoly2〜4件に拡張version検証: ヒット/ミス/昇格/evict統計in_progress
- Diagnostics: Registry dump / MIRDebugInfo / PIC・VT統計 / cache bumpログin_progress
### すぐ試せるコマンド
```bash
cargo build --release -j32
./target/release/nyash examples/p2p_self_ping.nyash
./target/release/nyash examples/p2p_ping_pong.nyash
```
## 現在の地図Done / Next
### ✅ 完了9.79a
- ユニバーサル前段ディスパッチtoString/type/equals/cloneInterpreter/VM
- P2P unregister安全化・onOnce/off E2E・self/two-nodeスモーク
- IntentBoxのpayload糖衣MapBox/JSONBox直渡し可
- Docs: P2Pリファレンス/サンプル
### ⏭️ 次9.79b
- 9.79b.1: `phase_9_79b_1_unified_registry_ids_and_builder_slotting.md` ✅ 最小スコープ達成method_id導入
- 9.79b.2: `phase_9_79b_2_vm_vtable_thunks_and_pic.md` ✅ ミニマム完了(ユニバーサル/PIC/Plugin fast-path
- 9.79b.3: `phase_9_79b_3_vm_vtable_thunks_and_pic.md` → 足場固めTypeMeta/Thunk + Poly-PIC + Diagnostics
## 統一Box設計メモ唯一参照
- `docs/ideas/other/2025-08-25-unified-box-design-deep-analysis.md`
- 数値ID/スロット/Thunk/PIC/DebugInfoの全体像
## 参考リンク
- MIR命令セット: `docs/reference/mir/INSTRUCTION_SET.md`
- Phase 9.79a(完了): `docs/development/roadmap/phases/phase-9/phase_9_79a_unified_box_dispatch_and_p2p_polish.md`
- Phase 9.79b(計画):
- `docs/development/roadmap/phases/phase-9/phase_9_79b_1_unified_registry_ids_and_builder_slotting.md`
- `docs/development/roadmap/phases/phase-9/phase_9_79b_2_vm_vtable_thunks_and_pic.md`
- Phase 10Cranelift JIT主経路: `docs/development/roadmap/phases/phase-10/phase_10_cranelift_jit_backend.md`
## Parking Lot後でやる
- NyashValue即値最適化・演算子特化
- トレイト階層化Comparable/Arithmetic etc.
- オブジェクトリテラル糖衣feature `object_literal`)提案: `docs/ideas/improvements/2025-08-26-object-literal-sugar.md`