2.8 KiB
1.0.0-beta.10 Developer Experience API Discovery
Status: release scope for 1.0.0-beta.10.
1.0.0-beta.10 is a tooling/docs slice on top of the beta.8 concrete alias
foundation and beta.9 collection alias unification work. It improves API
discovery for the existing source-authored standard library and adds
editor-facing source metadata without adding new source-language execution
semantics, compiler-known runtime names, or runtime helpers.
Scope
- Upgrade
scripts/render-stdlib-api-doc.jsso the generateddocs/language/STDLIB_API.mdcatalog lists exact exported helper signatures, not only helper names. - Parse each
lib/std/*.slomodule, collect module-local(type ...)aliases, and normalize those aliases recursively in public helper signatures. - Verify exported helper names have matching
(fn ...)forms. - Omit non-exported helper functions and
(type ...)aliases from the public catalog. - Regenerate
docs/language/STDLIB_API.md. - Add
glagol symbols <file.slo|project|workspace>for deterministicslovo.symbolsS-expression metadata over modules, imports, exports, aliases, structs, enums, functions, tests, spans/ranges, and workspace package names. - Update README, language docs, compiler docs, and the post-beta roadmap to describe beta API discovery clearly.
Public Contract
The generated catalog is a beta discovery aid for the current lib/std
surface. Public signatures show concrete types such as (vec i32),
(option string), and (result u64 i32) instead of module-local alias names
such as VecI32, OptionString, or ResultU64.
The catalog remains generated from source and is not a hand-maintained API
freeze. It can help reviewers see current helper signatures, but it does not
make those helpers stable 1.0.0 standard-library APIs.
The symbols command is an editor-integration building block, not an LSP
server. Its output is deterministic machine-readable S-expression text and
uses the beta10 slovo.symbols schema label.
Explicit Non-Scope
- no executable generics
- no generic aliases or parameterized aliases
- no maps or sets
- no traits, inference, monomorphization, or iterators
- no new compiler-known runtime names
- no runtime helper or ABI/layout changes
- no LSP server, watch mode, SARIF, or daemon protocol
- no stable
1.0.0standard-library freeze
Checks
Focused checks for this slice:
node scripts/render-stdlib-api-doc.jscargo test --test symbols_beta10git diff --check -- scripts/render-stdlib-api-doc.js docs/language/STDLIB_API.md compiler/src/main.rs compiler/src/symbols.rs compiler/tests/symbols_beta10.rs README.md docs/language/SPEC-v1.md docs/language/ROADMAP.md docs/language/RELEASE_NOTES.md docs/compiler/ROADMAP.md docs/compiler/RELEASE_NOTES.md docs/POST_BETA_ROADMAP.md .llm/BETA_10_DEVELOPER_EXPERIENCE_API_DISCOVERY.md