2025-08-26 20:30:07 +09:00
|
|
|
|
# 🎯 CURRENT TASK - 2025-08-26(Phase 9.79b Kickoff)
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
コンテキストを最小化して、次フェーズへの導線だけ残すにゃ。
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
## ⏱️ 今日のフォーカス(Phase 9.79b: Unified IDs → VM Thunks)
|
|
|
|
|
|
- 目的: Box種別(builtin/user/plugin)をMIR/VMで数値ID+スロット統一に移行し、Phase 10(JIT)の足場を固める。
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
### 直近タスク(小さく早く)
|
|
|
|
|
|
1) 9.79b.1: Unified Registry IDs + Builder Slotting
|
2025-08-26 20:48:48 +09:00
|
|
|
|
- 型ID/メソッドスロットの導入(レジストリ)✅ 実装
|
|
|
|
|
|
- ユニバーサルメソッド低スロット予約(0..3)✅ テストで不変確認
|
|
|
|
|
|
- Builderが解決可能なBoxCallに`method_id`を付与(未解決は遅延)✅ 実装/Printer表示
|
2025-08-26 20:30:07 +09:00
|
|
|
|
2) 9.79b.2: VM VTable Thunks + Mono-PIC
|
2025-08-26 20:56:06 +09:00
|
|
|
|
- `execute_boxcall`をvtable+thunkの単一路線へ(ユニバーサル0..3のfast-path追加)✅ スケルトン
|
2025-08-26 20:59:37 +09:00
|
|
|
|
- call-site単位のモノモーフィックPICを追加(Key設計とカウンタ導入・記録まで)✅ スケルトン
|
2025-08-26 22:11:17 +09:00
|
|
|
|
- 次: 安定閾値での直呼び最適化(InstanceBox関数名キャッシュ)✅ 実装(PIC=8で昇格)
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
### すぐ試せるコマンド
|
2025-08-23 18:52:18 +09:00
|
|
|
|
```bash
|
|
|
|
|
|
cargo build --release -j32
|
2025-08-26 20:30:07 +09:00
|
|
|
|
./target/release/nyash examples/p2p_self_ping.nyash
|
|
|
|
|
|
./target/release/nyash examples/p2p_ping_pong.nyash
|
2025-08-23 18:52:18 +09:00
|
|
|
|
```
|
2025-08-26 05:49:23 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
## 現在の地図(Done / Next)
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
### ✅ 完了(9.79a)
|
|
|
|
|
|
- ユニバーサル前段ディスパッチ(toString/type/equals/clone)Interpreter/VM
|
|
|
|
|
|
- P2P unregister安全化・onOnce/off E2E・self/two-nodeスモーク
|
|
|
|
|
|
- IntentBoxのpayload糖衣(MapBox/JSONBox直渡し可)
|
|
|
|
|
|
- Docs: P2Pリファレンス/サンプル
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
### ⏭️ 次(9.79b)
|
2025-08-26 20:48:48 +09:00
|
|
|
|
- 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` → 着手予定
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
## 統一Box設計メモ(唯一参照)
|
|
|
|
|
|
- `docs/ideas/other/2025-08-25-unified-box-design-deep-analysis.md`
|
|
|
|
|
|
- 数値ID/スロット/Thunk/PIC/DebugInfoの全体像
|
2025-08-26 19:13:57 +09:00
|
|
|
|
|
2025-08-26 20:30:07 +09:00
|
|
|
|
## 参考リンク
|
|
|
|
|
|
- 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`
|
2025-08-26 19:13:57 +09:00
|
|
|
|
- Phase 10(Cranelift JIT主経路): `docs/development/roadmap/phases/phase-10/phase_10_cranelift_jit_backend.md`
|
2025-08-26 05:49:23 +09:00
|
|
|
|
|
2025-08-26 19:13:57 +09:00
|
|
|
|
## Parking Lot(後でやる)
|
2025-08-26 20:30:07 +09:00
|
|
|
|
- NyashValue即値最適化・演算子特化
|
2025-08-26 19:13:57 +09:00
|
|
|
|
- トレイト階層化(Comparable/Arithmetic etc.)
|
2025-08-26 20:30:07 +09:00
|
|
|
|
- オブジェクトリテラル糖衣(feature `object_literal`)提案: `docs/ideas/improvements/2025-08-26-object-literal-sugar.md`
|