code wiki / (root) / nx_langsem_gate.nx

nx_langsem_gate.nx

buildroot/runtime/nx_langsem_gate.nx

9453 B155 linesdepth 3pulls 4 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_langsem_gate.nx -- THE EXECUTABLE RECORD OF NISHILANG'S OWN SEMANTICS. WHY THIS EXISTS. Every fact below was learned by a seat the expensive way -- by a build failing, by a test that quietly could not fail, or by an extraction that happened to work -- and then written into prose that the next seat may or may not read. Prose is not a control. These are the language's load-bearing behaviours, and until now NOTHING asserted them, so a compiler change could alter one and the estate would find out through a silently wrong world, a silently unshared static, or a comparison that never matches. Measured 2026-08-28 with nx_spendgate: no incumbent gates NishiLang semantics (nx_bless_compiler self-deploys the compiler; nx_cc_equiv_gate proves an OPTIMISATION is equivalent; neither pins the contract a source author writes against). So this is the missing referee, not a duplicate. WHAT IT DELIBERATELY DOES NOT PIN, stated so absence is not read as coverage: * define-before-use. NishiLang is single-pass and the compiler REFUSES a const used above its declaration; asserting a REFUSAL needs a fork of the compiler over a bad fixture, which is a different (and heavier) gate than this in-process one. Named here as the owed rung. * right-shift sign behaviour on negatives. I have no measured evidence for it in the record, and a gate must not encode a guess: a tooth asserting the wrong answer would be worse than no tooth, because it would read as coverage. Owed: measure it, then pin it. license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_langsem_lib.nx nx_langsem_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_langsem_lib.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ gv_head gv_puts sys_write ↻ gv_puts ↻ gv_num sys_mmap ↻ sys_write ↻ sys_munmap ls_untouched gv_check gv_puts ↻ ls_get ls_set ls_divmod_probe gv_bite gv_puts ↻ gv_verdict gv_note_bare_rate gv_bare_rate gv_at gv_obj_has_n gv_at ↻ gv_puts ↻

structs

none

consts

29const LG_WRITE_A: i64 = 12345
30const LG_WRITE_B: i64 = 6789
31const LG_INTERNAL: i64 = 999

functions

33func main() -> i64