docs(current_task): restart notes for Ny syntax alignment and next steps

This commit is contained in:
Selfhosting Dev
2025-09-08 02:24:17 +09:00
parent 29e2973a72
commit 6a80ce6c65

View File

@ -1,3 +1,29 @@
# Restart Notes — Ny Syntax Alignment (20250907)
目的
- SelfHosting 方針Nyのみで工具を回す前段に合わせて、Ny 構文とコーディング規約を明示化し、最小版ツールの完走性を優先。
Ny 構文(実装時の基準)
- 1行1文セミコロン非使用。
- break / continue を使わない(関数早期 return、番兵条件、if 包みで置換)。
- else は直前の閉じ波括弧と同一行(`} else {`})。
- 文字列の `"``\` は確実にエスケープ。
- 反復は `loop(条件) { …; インクリメント }` を基本とし、必要に応じて「関数早期 return」型で早期脱出。
短期タスクSyntax 合意前提で最小ゴール)
1) include のみ依存木Nyのみ・配列/マップ未使用)を完走化
- `apps/selfhost/tools/dep_tree_min_string.nyash`
- FileBox/PathBox + 文字走査のみで JSON 構築(配列/マップに頼らない)
- `make dep-tree``tmp/deps.json` を出力
2) using/module 対応は次段(構文・優先順位をユーザーと再すり合わせ後)
- 優先: `module > 相対 > using-path`、曖昧=エラー、STRICT ゲート(要相談)
3) ブリッジ Stage 1 は保留
- `NYASH_DEPS_JSON=<path>` 読み込みログ出力のみを最小パッチで用意MIR/JIT/AOT は不変)
備考
- Cranelift 側の作業は別ブランチで継続。SelfHosting ブランチは Ny 工具の安定化に集中。
- 構文の最終合意後、using/module 版(配列/マップ最小 APIへ拡張。
# Quick Plan — SelfHost (Restart Safe)
- Goals: Ny-only dependency tree (include → later using/module), JSON out; simple file-bridge to existing MIR→VM→AOT without tight coupling.