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

2.5 KiB
Raw Blame History

🎯 CURRENT TASK - 2025-08-26Phase 9.79b Kickoff

コンテキストを最小化して、次フェーズへの導線だけ残すにゃ。

⏱️ 今日のフォーカスPhase 9.79b: Unified IDs → VM Thunks

  • 目的: Box種別builtin/user/pluginをMIR/VMで数値IDスロット統一に移行し、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の単一路線へ
    • call-site単位のモモーフィックPICを追加

すぐ試せるコマンド

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 → 着手予定

統一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