docs: fix bitwise width (int64), lambda arrow (=>), NUM grammar (hex)#444
Merged
Merged
Conversation
…ar (hex) A documentation review found three stale claims: - LANGUAGE_CONTRACT.md bitwise: said "32-bit two's-complement, int32, shifts masked [0,31]". The runtime moved to int64 in v0.26.0 (#382) — the bit_* builtins ARE the infix operators. Corrected to int64 (exact below 2^63), masking [0,63], with the builtin==infix parity note. (The masking clause is honored by the companion fix that masks the infix shift count & 63.) - LANGUAGE_CONTRACT.md lambda: "(x) -> expr, lambda blocks". The lambda arrow is `=>`, not `->` (`->` is a parse error), and there is no `lambda` block keyword. Corrected to `(x) => expr`. - GRAMMAR.md NUM: claimed hex is "delegated to strtod". Since #378 hex is lexed explicitly by the front end (integer-only, profile-consistent), and hex-FLOAT forms (0x1p4, 0xA.8) are parse errors, not numbers. Split NUM into DEC (strtod) and HEX (explicit int) productions to match. All three verified against the running binary. Doc-only; doc gates green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A documentation review found three claims contradicted by the running binary:
bit_*builtins are the infix operators. Corrected to int64 (exact below 2^63), masking [0,63], with the builtin==infix parity note. (The masking clause is made true by companion fix fix(vm): mask infix shift counts & 63 — kill << >> undefined behavior #443, which masks the infix shift count& 63.)(x) -> exprand "lambda blocks". The lambda arrow is=>(->is a parse error) and there is nolambdakeyword. Corrected to(x) => expr.0x1p4,0xA.8) are parse errors, not numbers. SplitNUMintoDEC(strtod) andHEX(explicit int) productions.All verified against the binary. Doc-only;
doc_drift_check.sh+stdlib_index_check.shgreen.🤖 Generated with Claude Code