Skip to content

Rewrite Core language reference and add transforms doc#1084

Merged
shigoel merged 11 commits into
mainfrom
shilpi/core-transform-doc
May 4, 2026
Merged

Rewrite Core language reference and add transforms doc#1084
shigoel merged 11 commits into
mainfrom
shilpi/core-transform-doc

Conversation

@shigoel
Copy link
Copy Markdown
Contributor

@shigoel shigoel commented Apr 30, 2026

Summary

  • Rewrites LangDefDoc.lean as a proper 5-section language reference: Introduction, Lambda (syntax + type system), Imperative (commands, statements, KleeneStmt, metadata), Strata Core (expressions, built-in types, built-in operators, type declarations, ADTs, functions, recursive functions, axioms, commands, procedures, programs), and Semantics (Lambda operational + denotational, command, statement, KleeneStmt).
  • Adds TransformsDoc.lean documenting program transforms (strata transform CLI), analysis modes, and the SMT analysis pipeline.
  • Adds missing docstrings to CmdExt, CallArg, Decl, Program, LSort, StepKleene, and StepKleeneStar in the source.
  • Adds deprecation notes to Datatypes.md, RecursiveFunctions.md, and VerificationModes.md pointing to the canonical Verso docs.
  • Cross-document links point to rendered HTML output rather than GitHub source files.

Rewrite LangDefDoc.lean as a proper language reference with 5 sections:
Introduction, Lambda, Imperative, Strata Core, and Semantics. Add
coverage for built-in types, operators, algebraic datatypes, functions,
axioms, programs, denotational semantics, and KleeneStmt.

Add TransformsDoc.lean documenting program transforms (procedure
inlining, call/loop elimination, filtering, axiom removal), analysis
modes, and the SMT analysis pipeline.

Source changes: add missing docstrings to CmdExt, CallArg, Decl,
Program, LSort, StepKleene, and StepKleeneStar.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@shigoel
Copy link
Copy Markdown
Contributor Author

shigoel commented Apr 30, 2026

@tautschnig We can document the GOTO transforms in the Transforms Doc., going forward.

Comment thread docs/verso/LangDefDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean
Comment thread docs/verso/LangDefDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean
Comment thread docs/verso/TransformsDoc.lean
Comment thread docs/verso/TransformsDoc.lean Outdated
Comment thread docs/verso/TransformsDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean
Copy link
Copy Markdown
Contributor

@MikaelMayer MikaelMayer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well-structured rewrite of the language reference. The reorganization into five clear sections (Introduction, Lambda, Imperative, Strata Core, Semantics) is a significant improvement. The new docstrings on source types are accurate and useful. The denotational semantics section and the Strata Core section (expressions, types, operators, ADTs, functions, axioms, procedures, programs) are thorough additions.

A few minor items below.

Comment thread docs/verso/TransformsDoc.lean Outdated
Comment thread docs/verso/TransformsDoc.lean Outdated
Comment thread docs/verso/LangDefDoc.lean Outdated
shigoel and others added 3 commits May 1, 2026 10:01
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@shigoel shigoel requested review from MikaelMayer and joscoh May 1, 2026 15:07
Comment thread docs/verso/LangDefDoc.lean Outdated
shigoel and others added 3 commits May 1, 2026 11:21
Unsafe destructors return an arbitrary value of the return type on the
wrong constructor, not UB in the C sense.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The partial evaluator is not introduced in this document, so mentioning
eval_denote_sound pulls in unexplained concepts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
joscoh
joscoh previously approved these changes May 1, 2026
Comment thread docs/verso/TransformsDoc.lean Outdated
@MikaelMayer
Copy link
Copy Markdown
Contributor

🤖 Removed the empty "GOTO Analysis" section entirely. It can be added back when content is ready.

Comment thread docs/verso/LangDefDoc.lean
@shigoel shigoel added this pull request to the merge queue May 4, 2026
Merged via the queue into main with commit 34920a3 May 4, 2026
22 checks passed
@shigoel shigoel deleted the shilpi/core-transform-doc branch May 4, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants