Phase 195-impl instruction document for P3 multi-carrier implementation:
- Goal: Extend Pattern3 (If-Else PHI) to handle 2-3 carriers simultaneously
- Approach: ExitLine extension (no PhiGroupBox - reuse existing infrastructure)
Task breakdown:
- 195-impl-1: Pattern3 lowerer multi-carrier support
- extract_update_or_unchanged function (~40 lines)
- Loop over all carriers in CarrierInfo
- Handle unchanged carriers (use previous value)
- Fail-Fast for partial updates / nested if
- 195-impl-2: ExitLine extension verification
- Check meta_collector.rs (likely already multi-carrier ready)
- Check reconnector.rs (loop over all carrier_bindings)
- Reuse CarrierVar.join_id infrastructure
- 195-impl-3: if-sum test (sum + count) - PRIORITY
- phase195_sum_count.hako (new file)
- Expected: 72 (sum=7, count=2)
- Verify no [joinir/freeze]
- 195-impl-4: _parse_string simple (escaped only) - OPTIONAL
- phase195_flag_buffer.hako (new file)
- BoolFlag carrier test
- Buffer concat deferred to Phase 19x+
- 195-impl-5: Documentation updates
- phase195 design: Implementation Status section
- CURRENT_TASK.md: Phase 195-impl completion
- overview: Phase 195 completion mark
Implementation focus:
```rust
// Core change: single → multi carrier
for (carrier_name, (then_val, else_val)) in carrier_updates {
let phi_result = emit_phi(merge, then_val, else_val);
exit_line.connect(carrier_name, phi_result);
}
```
Success criteria:
- Pattern3 lowerer handles multiple carriers
- if-sum pattern works (sum+count)
- No regressions in existing tests
- Clear documentation of multi-carrier support
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Nyash Development Documentation 🔧
開発者向けの進行中タスクと開発計画ドキュメントです。
📂 ディレクトリ構造
current/
CURRENT_TASK.md- 現在進行中のタスク- アクティブな開発作業の詳細
- 最新の実装状況
roadmap/
- phases/ - フェーズ別開発計画
- phase-8/ - AST→MIR変換
- phase-9/ - VM/JIT実装
- phase-10/ - AOT最適化
- native-plan/ - ネイティブビルド計画
- 実行バックエンド統合
- パフォーマンス目標
proposals/
- RFC(Request for Comments)
- 新機能提案
- 設計ディスカッション
🎯 重要な参照先
- 進行状況:
current/CURRENT_TASK.md - 開発計画:
roadmap/phases/ - 技術提案:
proposals/
📝 注意事項
このディレクトリの内容は開発中であり、頻繁に変更されます。
安定した仕様はreference/を参照してください。