Files
hakorune/docs/development/roadmap/phases/phase-19/README.md

35 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Phase 19: LoopForm ⇄ Core13 PoC と検証・ゼロコストCI
目的Why
- Phase18 の設計を具体化し、限定範囲で LoopForm ⇄ Core13 の往復を成立させる。
- 可逆性と“ゼロコスト退化”の検証を自動化CIし、設計の健全性を継続的に保証する。
やることPoC
- 変換: `lower_loop(ast) -> LoopModule`(限定サブセット)
- 実行: `interp-loop`(限定サブセット)
- ラウンドトリップ: `LoopForm -> Core13``Core13 -> LoopForm`退化ScopeLoopは等価
検証と禁則CI
- 可逆性テスト: 値・分岐・fini順序・効果が一致。
- ゼロコスト条件: 退化ScopeLoopの Core13 で “余計な `ExternCall/alloc` がゼロ”。
- 手順: IR差分/統計で call/alloc 新規発生が無いことをチェック。
- 将来: AOT/ASM差分の軽量比較変換に伴う命令増なし
LoopBox最小・非既定
- 目的: 第一級ループとして外部へ渡す/中断再開/反射トレース時のみ具現化。
- API: `birth/next/signal/fini` + `TypeOp is_signal_kind` + unwrap_*。
- 既定: feature off本体は退化ScopeLoopで十分
段階的導入
- M1: 退化ScopeLoopの往復可逆性テスト + ゼロコストCIIR差分
- M2: LoopBox最小実装 + verifybirth→(next)*→fini 一回性)
- M3: NDJSON拡張trace/ping/subscribeと観測ポイント
アウトオブスコープPhase19
- 最適化・高度なスケジューリングPhase20+
備考
- 例外は Result分岐で統一引き続き
- ASTは単一・IR分岐のまま維持