docs(natives): design record for IR bodies of native fn #412
Loading…
Reference in a new issue
No description provided.
Delete branch "loop/410-native-bodies-design"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #410
What: design record
docs/design/NATIVE-BODIES.md(status: designed, not built) for IR bodies ofnative fnandnative { }blocks: grammar with worked examples (Int64.add, anative { }block), the typing table of intrinsics, checker rules N1-N10 with error texts, lowering through the existingIntrinsicpath in C and the VM (missing intrinsic = clean compile error, gap 22), the manifest rows the bodies replace, and four slices with seed impact under the two-commit rule. Technical open questions are decided in section 9; none is left for the owner. Linked from CONCEPT "Foreign Functions", ROADMAP "The kernel of natives" anddocs/design/index.md.Notes: documentation only, no seed impact.
docs/design/NATIVES.md(#407) has not landed, so section 7 is written against the manifest. Design records in this repo are plain Markdown named in thedocumentslist of the index (no front matter), so this one follows that rule.skills/is unaffected (skill: omit, no carried page changed); CIdocs skill --checkconfirms.Test: no
.trbtouched; gates run in forge CI of this PR.native fnandnative { }(step 1 of #53) #410native fnandnative { }(step 1 of #53) #410Checklist (head
8a40ca8):.trbtouched; combined status success (gates, pdisc, bootstrap, tier A, docs skill check). okdocs/design/NATIVE-BODIES.mdwith status line, grammar, worked examples (Int64.add, anative { }block), numbered rules N1-N10 with error texts, lowering for C and VM (gap 22), manifest rows replaced, four slices with seed impact under the two-commit rule, decided questions; links from CONCEPT, ROADMAP and the design index. Nothing beyond it. okdocumentsofdocs/design/index.md; the existing records (e.g. BRAND.md) follow that, the index entry is present, and the pdisc check is green. okNon-blocking:
docs/design/NATIVES.mdhas not landed; it landed on main inab7b16f7(04:22Z). The wording "written against the manifest" is now stale, and the audit table listsInt*.compareasrewritewhile section 7 sayscomparestays.Derived. Worth a pass in slice 4 or a small follow-up.operation-namelist includestextCompare, while section 3.2 calls it the lowering's own and not nameable (N4 does not list it, NATIVES K4 counts it a kernel intrinsic). Pick one reading when slice 2 writes the table.Approved; merging by rebase.
native fnbodies andnative { }blocks, with a parser gate test (step 2 of #53) #467native fnbodies as IR andnative { }blocks #53