Release 1.0.0-beta.5
This commit is contained in:
parent
3dfd465e8d
commit
9956b1d874
@ -1,8 +1,10 @@
|
|||||||
# Beta 5 Package And Workspace Discipline
|
# Beta 5 Package And Workspace Discipline
|
||||||
|
|
||||||
Release label: `1.0.0-beta.5` candidate scope
|
Release label: `1.0.0-beta.5`
|
||||||
|
|
||||||
Status: in progress.
|
Release date: 2026-05-22
|
||||||
|
|
||||||
|
Status: released beta package/workspace discipline slice.
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|
||||||
|
|||||||
26
README.md
26
README.md
@ -6,7 +6,7 @@ This repository is the canonical public monorepo for the language design,
|
|||||||
standard library source, compiler, runtime, examples, benchmarks, and technical
|
standard library source, compiler, runtime, examples, benchmarks, and technical
|
||||||
documents.
|
documents.
|
||||||
|
|
||||||
Current release: `1.0.0-beta.4`.
|
Current release: `1.0.0-beta.5`.
|
||||||
|
|
||||||
## Repository Layout
|
## Repository Layout
|
||||||
|
|
||||||
@ -24,10 +24,11 @@ scripts/ local release and document tooling
|
|||||||
|
|
||||||
## Beta Scope
|
## Beta Scope
|
||||||
|
|
||||||
`1.0.0-beta.4` keeps the `1.0.0-beta` language baseline, includes the
|
`1.0.0-beta.5` keeps the `1.0.0-beta` language baseline, includes the
|
||||||
`1.0.0-beta.1` tooling/install hardening slice, the `1.0.0-beta.2`
|
`1.0.0-beta.1` tooling/install hardening slice, the `1.0.0-beta.2`
|
||||||
runtime/resource foundation bundle, the `1.0.0-beta.3` standard-library
|
runtime/resource foundation bundle, the `1.0.0-beta.3` standard-library
|
||||||
stabilization bundle, and the first language-usability diagnostics bundle. The
|
stabilization bundle, the `1.0.0-beta.4` language-usability diagnostics
|
||||||
|
bundle, and the `1.0.0-beta.5` local package/workspace discipline bundle. The
|
||||||
language baseline supports practical local command-line programs and libraries
|
language baseline supports practical local command-line programs and libraries
|
||||||
with:
|
with:
|
||||||
|
|
||||||
@ -150,16 +151,17 @@ language surface. Project/workspace build and run entry failures now use
|
|||||||
entry-specific diagnostic codes, and non-exhaustive `match` diagnostics have
|
entry-specific diagnostic codes, and non-exhaustive `match` diagnostics have
|
||||||
clearer wording with deterministic found-arm output.
|
clearer wording with deterministic found-arm output.
|
||||||
|
|
||||||
## Current Main: Package And Workspace Discipline
|
## 1.0.0-beta.5 Package And Workspace Discipline
|
||||||
|
|
||||||
After `1.0.0-beta.4`, `main` is tracking a package/workspace discipline slice.
|
The `1.0.0-beta.5` release tightens local package/workspace behavior. Local
|
||||||
Local workspaces may declare `[workspace] default_package = "name"` to select
|
workspaces may declare `[workspace] default_package = "name"` to select the
|
||||||
the build/run entry package when multiple packages have entry modules.
|
build/run entry package when multiple packages have entry modules. Duplicate
|
||||||
Duplicate normalized workspace members and missing default-package references
|
normalized workspace members and missing default-package references are now
|
||||||
are now dedicated diagnostics. `glagol doc <workspace> -o <dir>` includes a
|
dedicated diagnostics. `glagol doc <workspace> -o <dir>` includes a workspace
|
||||||
workspace package/dependency summary. New workspace templates declare
|
package/dependency summary, new workspace templates declare
|
||||||
`default_package = "app"`. Remote registries, lockfiles, semantic-version
|
`default_package = "app"`, and `docs/language/PACKAGES.md` documents the beta
|
||||||
solving, package publishing, and stable package ABI/layout remain deferred.
|
local-package rules. Remote registries, lockfiles, semantic-version solving,
|
||||||
|
package publishing, and stable package ABI/layout remain deferred.
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
|
|||||||
2
compiler/Cargo.lock
generated
2
compiler/Cargo.lock
generated
@ -4,4 +4,4 @@ version = 3
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "glagol"
|
name = "glagol"
|
||||||
version = "1.0.0-beta.4"
|
version = "1.0.0-beta.5"
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "glagol"
|
name = "glagol"
|
||||||
version = "1.0.0-beta.4"
|
version = "1.0.0-beta.5"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
description = "Glagol, the first compiler for the Slovo language"
|
description = "Glagol, the first compiler for the Slovo language"
|
||||||
license = "MIT OR Apache-2.0"
|
license = "MIT OR Apache-2.0"
|
||||||
|
|||||||
@ -131,14 +131,15 @@ Work:
|
|||||||
- add diagnostics for ambiguous package roots and dependency cycles
|
- add diagnostics for ambiguous package roots and dependency cycles
|
||||||
- keep remote registry, semver solving, and publishing out of scope
|
- keep remote registry, semver solving, and publishing out of scope
|
||||||
|
|
||||||
In progress after `1.0.0-beta.4`: local workspaces can declare
|
Released in `1.0.0-beta.5`: local workspaces can declare `default_package` to
|
||||||
`default_package` to select the build/run entry package when multiple packages
|
select the build/run entry package when multiple packages have entry modules.
|
||||||
have entry modules. Duplicate normalized member paths and missing default
|
Duplicate normalized member paths and missing default-package references are
|
||||||
package references are dedicated diagnostics. Workspace documentation now
|
dedicated diagnostics. Workspace documentation now includes package and local
|
||||||
includes package and local dependency summaries, and
|
dependency summaries, generated workspace templates declare
|
||||||
`docs/language/PACKAGES.md` records the beta local-package rules. Lockfiles,
|
`default_package = "app"`, and `docs/language/PACKAGES.md` records the beta
|
||||||
remote registries, semver solving, publishing, optional/dev/target
|
local-package rules. Lockfiles, remote registries, semver solving, publishing,
|
||||||
dependencies, and stable package ABI/layout remain out of scope.
|
optional/dev/target dependencies, and stable package ABI/layout remain out of
|
||||||
|
scope.
|
||||||
|
|
||||||
Why fifth: stable package rules are a prerequisite for a usable public language,
|
Why fifth: stable package rules are a prerequisite for a usable public language,
|
||||||
but remote publishing can wait.
|
but remote publishing can wait.
|
||||||
|
|||||||
@ -10,6 +10,21 @@ integration/readiness release, not the first real beta.
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
No unreleased changes yet.
|
||||||
|
|
||||||
|
## 1.0.0-beta.5
|
||||||
|
|
||||||
|
Release label: `1.0.0-beta.5`
|
||||||
|
|
||||||
|
Release date: 2026-05-22
|
||||||
|
|
||||||
|
Release state: package/workspace discipline beta update
|
||||||
|
|
||||||
|
### Summary
|
||||||
|
|
||||||
|
Glagol `1.0.0-beta.5` keeps the `1.0.0-beta` compiler support baseline and
|
||||||
|
releases the first package/workspace discipline bundle:
|
||||||
|
|
||||||
- Workspace manifests may now declare
|
- Workspace manifests may now declare
|
||||||
`[workspace] default_package = "name"` to choose the build/run entry package
|
`[workspace] default_package = "name"` to choose the build/run entry package
|
||||||
when multiple workspace packages contain their entry module.
|
when multiple workspace packages contain their entry module.
|
||||||
@ -25,6 +40,12 @@ integration/readiness release, not the first real beta.
|
|||||||
- `docs/language/PACKAGES.md` now documents the beta local workspace/package
|
- `docs/language/PACKAGES.md` now documents the beta local workspace/package
|
||||||
rules and the explicit no-registry/no-lockfile policy.
|
rules and the explicit no-registry/no-lockfile policy.
|
||||||
|
|
||||||
|
### Explicit Deferrals
|
||||||
|
|
||||||
|
This release does not add remote registries, lockfiles, semantic-version
|
||||||
|
solving, package publishing, optional/dev/target dependencies, feature flags,
|
||||||
|
build scripts, package archives, or stable package ABI/layout guarantees.
|
||||||
|
|
||||||
## 1.0.0-beta.4
|
## 1.0.0-beta.4
|
||||||
|
|
||||||
Release label: `1.0.0-beta.4`
|
Release label: `1.0.0-beta.4`
|
||||||
|
|||||||
@ -22,20 +22,15 @@ general-purpose beta release.
|
|||||||
|
|
||||||
A Glagol feature is done only when it has parser/lowerer support, checker behavior, diagnostics for invalid forms, backend behavior or explicit unsupported diagnostics, and tests.
|
A Glagol feature is done only when it has parser/lowerer support, checker behavior, diagnostics for invalid forms, backend behavior or explicit unsupported diagnostics, and tests.
|
||||||
|
|
||||||
Current stage: `1.0.0-beta.4`, released on 2026-05-22 as the first post-beta
|
Current stage: `1.0.0-beta.5`, released on 2026-05-22 as the first post-beta
|
||||||
language-usability diagnostics update. It keeps the `1.0.0-beta`
|
package/workspace discipline update. It keeps the `1.0.0-beta`
|
||||||
language/compiler support baseline and includes the `1.0.0-beta.1` tooling
|
language/compiler support baseline and includes the `1.0.0-beta.1` tooling
|
||||||
hardening release, the `1.0.0-beta.2` runtime/resource foundation release, the
|
hardening release, the `1.0.0-beta.2` runtime/resource foundation release, the
|
||||||
`1.0.0-beta.3` standard-library stabilization release, entry-specific
|
`1.0.0-beta.3` standard-library stabilization release, the `1.0.0-beta.4`
|
||||||
project/workspace `main` diagnostics, and clearer non-exhaustive `match`
|
language-usability diagnostics release, `[workspace] default_package = "name"`
|
||||||
diagnostics.
|
for deterministic build/run entry selection, tighter workspace-member/default
|
||||||
|
package diagnostics, workspace package/dependency docs, and
|
||||||
Current unreleased work is the package/workspace discipline slice. It adds
|
`docs/language/PACKAGES.md` for beta local-package rules.
|
||||||
`[workspace] default_package = "name"` for deterministic build/run entry
|
|
||||||
selection in multi-entry workspaces and tightens workspace-member/default
|
|
||||||
package diagnostics. Workspace docs now include package/dependency summaries.
|
|
||||||
`docs/language/PACKAGES.md` records the beta local-package rules. Registries,
|
|
||||||
lockfiles, semver solving, and publishing remain deferred.
|
|
||||||
|
|
||||||
The final experimental precursor scope is `exp-125`. Its unsigned direct-value
|
The final experimental precursor scope is `exp-125`. Its unsigned direct-value
|
||||||
flow, parse/format runtime lanes, and matching staged stdlib helper breadth
|
flow, parse/format runtime lanes, and matching staged stdlib helper breadth
|
||||||
|
|||||||
@ -8,15 +8,32 @@ Historical `exp-*` releases listed here are experimental maturity milestones.
|
|||||||
The pushed tag `v2.0.0-beta.1` is historical. It is now documented as an
|
The pushed tag `v2.0.0-beta.1` is historical. It is now documented as an
|
||||||
experimental integration/readiness release, not as a beta maturity claim.
|
experimental integration/readiness release, not as a beta maturity claim.
|
||||||
|
|
||||||
The current release is `1.0.0-beta.4`, published on 2026-05-22. It keeps the
|
The current release is `1.0.0-beta.5`, published on 2026-05-22. It keeps the
|
||||||
`1.0.0-beta` language surface, includes the first post-beta tooling/install
|
`1.0.0-beta` language surface, includes the first post-beta tooling/install
|
||||||
hardening bundle from `1.0.0-beta.1`, and adds the first runtime/resource
|
hardening bundle from `1.0.0-beta.1`, and adds the first runtime/resource
|
||||||
foundation bundle from `1.0.0-beta.2` plus the first standard-library
|
foundation bundle from `1.0.0-beta.2` plus the first standard-library
|
||||||
stabilization bundle from `1.0.0-beta.3` and the first language-usability
|
stabilization bundle from `1.0.0-beta.3`, the first language-usability
|
||||||
diagnostics bundle.
|
diagnostics bundle from `1.0.0-beta.4`, and the first local
|
||||||
|
package/workspace discipline bundle.
|
||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
No unreleased changes yet.
|
||||||
|
|
||||||
|
## 1.0.0-beta.5
|
||||||
|
|
||||||
|
Release label: `1.0.0-beta.5`
|
||||||
|
|
||||||
|
Release name: Package And Workspace Discipline Bundle
|
||||||
|
|
||||||
|
Release date: 2026-05-22
|
||||||
|
|
||||||
|
Status: released beta package/workspace update on the `1.0.0-beta` language
|
||||||
|
baseline.
|
||||||
|
|
||||||
|
`1.0.0-beta.5` tightens local workspace behavior without adding a package
|
||||||
|
manager:
|
||||||
|
|
||||||
- Local workspace manifests may now declare
|
- Local workspace manifests may now declare
|
||||||
`[workspace] default_package = "name"` to make build/run entry selection
|
`[workspace] default_package = "name"` to make build/run entry selection
|
||||||
deterministic when more than one package has an entry module.
|
deterministic when more than one package has an entry module.
|
||||||
@ -33,6 +50,10 @@ diagnostics bundle.
|
|||||||
- `docs/language/PACKAGES.md` now documents the beta local package/workspace
|
- `docs/language/PACKAGES.md` now documents the beta local package/workspace
|
||||||
rules and the explicit no-registry/no-lockfile policy.
|
rules and the explicit no-registry/no-lockfile policy.
|
||||||
|
|
||||||
|
This release does not add remote registries, lockfiles, semantic-version
|
||||||
|
solving, package publishing, optional/dev/target dependencies, feature flags,
|
||||||
|
build scripts, package archives, or stable package ABI/layout guarantees.
|
||||||
|
|
||||||
## 1.0.0-beta.4
|
## 1.0.0-beta.4
|
||||||
|
|
||||||
Release label: `1.0.0-beta.4`
|
Release label: `1.0.0-beta.4`
|
||||||
|
|||||||
@ -10,19 +10,15 @@ Long-horizon planning lives in
|
|||||||
release train from the historical `v2.0.0-beta.1` tag toward and beyond the
|
release train from the historical `v2.0.0-beta.1` tag toward and beyond the
|
||||||
first real general-purpose beta Slovo contract.
|
first real general-purpose beta Slovo contract.
|
||||||
|
|
||||||
Current stage: `1.0.0-beta.4`, released on 2026-05-22 as the first post-beta
|
Current stage: `1.0.0-beta.5`, released on 2026-05-22 as the first post-beta
|
||||||
language-usability diagnostics update. It keeps the `1.0.0-beta` language
|
package/workspace discipline update. It keeps the `1.0.0-beta` language
|
||||||
contract and includes the `1.0.0-beta.1` tooling hardening release, the
|
contract and includes the `1.0.0-beta.1` tooling hardening release, the
|
||||||
`1.0.0-beta.2` runtime/resource foundation release, the `1.0.0-beta.3`
|
`1.0.0-beta.2` runtime/resource foundation release, the `1.0.0-beta.3`
|
||||||
standard-library stabilization release, entry-specific project/workspace
|
standard-library stabilization release, the `1.0.0-beta.4`
|
||||||
`main` diagnostics, and clearer non-exhaustive `match` diagnostics.
|
language-usability diagnostics release, `[workspace] default_package = "name"`
|
||||||
|
for deterministic build/run entry selection, tighter duplicate-member/default
|
||||||
Current unreleased work is the package/workspace discipline slice. It adds
|
package diagnostics, workspace package/dependency docs, and
|
||||||
`[workspace] default_package = "name"` for deterministic build/run entry
|
`docs/language/PACKAGES.md` for beta local-package rules.
|
||||||
selection in multi-entry workspaces and tightens duplicate-member/default
|
|
||||||
package diagnostics. Workspace docs now include package/dependency summaries.
|
|
||||||
`docs/language/PACKAGES.md` records the beta local-package rules. Registries,
|
|
||||||
lockfiles, semver solving, and publishing remain deferred.
|
|
||||||
|
|
||||||
The final experimental precursor scope is `exp-125`, defined in
|
The final experimental precursor scope is `exp-125`, defined in
|
||||||
`.llm/EXP_125_UNSIGNED_U32_U64_NUMERIC_AND_STDLIB_BREADTH_ALPHA.md`. Its
|
`.llm/EXP_125_UNSIGNED_U32_U64_NUMERIC_AND_STDLIB_BREADTH_ALPHA.md`. Its
|
||||||
|
|||||||
@ -6,7 +6,7 @@ Do not edit this file by hand.
|
|||||||
## Stability Tiers
|
## Stability Tiers
|
||||||
|
|
||||||
- `beta-supported`: exported from `lib/std` and covered by source-search, promotion, or facade gates in the current beta line.
|
- `beta-supported`: exported from `lib/std` and covered by source-search, promotion, or facade gates in the current beta line.
|
||||||
- `experimental`: not used for exported `lib/std` helpers in `1.0.0-beta.4`; future releases may mark new helpers this way before they graduate.
|
- `experimental`: not used for exported `lib/std` helpers in `1.0.0-beta.5`; future releases may mark new helpers this way before they graduate.
|
||||||
- `internal`: helper names that are not exported from their module; they are intentionally omitted from this catalog.
|
- `internal`: helper names that are not exported from their module; they are intentionally omitted from this catalog.
|
||||||
|
|
||||||
The catalog is a beta compatibility aid, not a stable `1.0.0` API freeze.
|
The catalog is a beta compatibility aid, not a stable `1.0.0` API freeze.
|
||||||
|
|||||||
Binary file not shown.
@ -5,18 +5,18 @@
|
|||||||
Sanjin Gumbarevic<br>
|
Sanjin Gumbarevic<br>
|
||||||
hermeticum_lab@protonmail.com
|
hermeticum_lab@protonmail.com
|
||||||
|
|
||||||
Publication release: `1.0.0-beta.4`
|
Publication release: `1.0.0-beta.5`
|
||||||
|
|
||||||
Technical behavior baseline: compiler and language support through
|
Technical behavior baseline: compiler and language support through
|
||||||
`1.0.0-beta`; tooling and install workflow through `1.0.0-beta.1`;
|
`1.0.0-beta`; tooling and install workflow through `1.0.0-beta.1`;
|
||||||
runtime/resource foundation through `1.0.0-beta.2`; standard-library
|
runtime/resource foundation through `1.0.0-beta.2`; standard-library
|
||||||
stabilization through `1.0.0-beta.3`; language-usability diagnostics through
|
stabilization through `1.0.0-beta.3`; language-usability diagnostics through
|
||||||
`1.0.0-beta.4`
|
`1.0.0-beta.4`; package/workspace discipline through `1.0.0-beta.5`
|
||||||
|
|
||||||
Date: 2026-05-22
|
Date: 2026-05-22
|
||||||
|
|
||||||
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
|
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
|
||||||
reruns from a local checkout; beta.4 release-gate verification from the public
|
reruns from a local checkout; beta.5 release-gate verification from the public
|
||||||
monorepo
|
monorepo
|
||||||
|
|
||||||
Maturity: beta
|
Maturity: beta
|
||||||
@ -28,19 +28,19 @@ Slovo. It exists to make the language support boundary inspectable: tokens,
|
|||||||
S-expression tree, AST, typed AST, LLVM IR, hosted native executable, tests,
|
S-expression tree, AST, typed AST, LLVM IR, hosted native executable, tests,
|
||||||
diagnostics, and release documents should agree.
|
diagnostics, and release documents should agree.
|
||||||
|
|
||||||
The current publication release, `1.0.0-beta.4`, keeps the first real
|
The current publication release, `1.0.0-beta.5`, keeps the first real
|
||||||
general-purpose beta toolchain baseline from `1.0.0-beta` and records the
|
general-purpose beta toolchain baseline from `1.0.0-beta` and records the
|
||||||
first post-beta tooling/install hardening update plus the first
|
first post-beta tooling/install hardening update plus the first
|
||||||
runtime/resource foundation update plus the first standard-library
|
runtime/resource foundation update plus the first standard-library
|
||||||
stabilization update plus the first language-usability diagnostics update. The
|
stabilization update plus the first language-usability diagnostics update and
|
||||||
beta baseline includes
|
the first local package/workspace discipline update. The beta baseline includes
|
||||||
the completed `u32` / `u64` unsigned compiler and stdlib breadth scope
|
the completed `u32` / `u64` unsigned compiler and stdlib breadth scope
|
||||||
alongside the current nine-kernel benchmark suite. This paper records the
|
alongside the current nine-kernel benchmark suite. This paper records the
|
||||||
current beta implementation surface, the benchmark method and results, the
|
current beta implementation surface, the benchmark method and results, the
|
||||||
distinction between Glagol and Lisp-family implementations, the beta.1 tooling
|
distinction between Glagol and Lisp-family implementations, the beta.1 tooling
|
||||||
update, the beta.2 runtime/resource foundation, the beta.3 standard-library
|
update, the beta.2 runtime/resource foundation, the beta.3 standard-library
|
||||||
stabilization slice, the beta.4 diagnostics usability slice, and the compiler
|
stabilization slice, the beta.4 diagnostics usability slice, the beta.5 package
|
||||||
path from beta to stable.
|
discipline slice, and the compiler path from beta to stable.
|
||||||
|
|
||||||
## 1. Compiler Thesis
|
## 1. Compiler Thesis
|
||||||
|
|
||||||
@ -124,7 +124,7 @@ At the current technical behavior beta baseline, Glagol supports:
|
|||||||
- benchmark scaffolds for Slovo, C, Rust, Python, Clojure, and Common
|
- benchmark scaffolds for Slovo, C, Rust, Python, Clojure, and Common
|
||||||
Lisp/SBCL, with `cold-process` and `hot-loop` timing modes
|
Lisp/SBCL, with `cold-process` and `hot-loop` timing modes
|
||||||
|
|
||||||
The current release, `1.0.0-beta.4`, is a beta language-usability diagnostics
|
The current release, `1.0.0-beta.5`, is a beta package/workspace discipline
|
||||||
update on the first release line that may honestly use beta maturity language
|
update on the first release line that may honestly use beta maturity language
|
||||||
for this toolchain.
|
for this toolchain.
|
||||||
|
|
||||||
@ -284,9 +284,9 @@ python3 benchmarks/vec-string-eq-loop/run.py --mode cold-process --repeats 3 --w
|
|||||||
The benchmark rows below remain the full-suite `1.0.0-beta` publication
|
The benchmark rows below remain the full-suite `1.0.0-beta` publication
|
||||||
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
|
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
|
||||||
`1.0.0-beta.2` adds runtime/resource APIs, `1.0.0-beta.3` adds
|
`1.0.0-beta.2` adds runtime/resource APIs, `1.0.0-beta.3` adds
|
||||||
standard-library catalog and composition coverage, and `1.0.0-beta.4` improves
|
standard-library catalog and composition coverage, `1.0.0-beta.4` improves
|
||||||
diagnostics. None of these post-beta slices claims changed benchmark
|
diagnostics, and `1.0.0-beta.5` tightens package/workspace discipline. None of
|
||||||
performance.
|
these post-beta slices claims changed benchmark performance.
|
||||||
|
|
||||||
The exp-123 publication baseline widened the paired same-machine result set
|
The exp-123 publication baseline widened the paired same-machine result set
|
||||||
from seven rows to nine by adding two owned-vector kernels:
|
from seven rows to nine by adding two owned-vector kernels:
|
||||||
@ -374,12 +374,13 @@ coverage and compatibility:
|
|||||||
- package behavior becoming stable before dependency, manifest, and versioning
|
- package behavior becoming stable before dependency, manifest, and versioning
|
||||||
rules are precise
|
rules are precise
|
||||||
|
|
||||||
## 9. Path Beyond `1.0.0-beta.4`
|
## 9. Path Beyond `1.0.0-beta.5`
|
||||||
|
|
||||||
Glagol now implements the first real beta Slovo contract, the first
|
Glagol now implements the first real beta Slovo contract, the first
|
||||||
post-beta tooling/install hardening release, the first runtime/resource
|
post-beta tooling/install hardening release, the first runtime/resource
|
||||||
foundation release, the first standard-library stabilization release, and the
|
foundation release, the first standard-library stabilization release, and the
|
||||||
first diagnostics usability release. The remaining path is from beta to stable.
|
first diagnostics usability release, and the first package/workspace
|
||||||
|
discipline release. The remaining path is from beta to stable.
|
||||||
|
|
||||||
Recommended compiler sequence:
|
Recommended compiler sequence:
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@ -5,17 +5,18 @@
|
|||||||
Sanjin Gumbarevic<br>
|
Sanjin Gumbarevic<br>
|
||||||
hermeticum_lab@protonmail.com
|
hermeticum_lab@protonmail.com
|
||||||
|
|
||||||
Publication release: `1.0.0-beta.4`
|
Publication release: `1.0.0-beta.5`
|
||||||
|
|
||||||
Technical behavior baseline: language surface through `1.0.0-beta`; tooling
|
Technical behavior baseline: language surface through `1.0.0-beta`; tooling
|
||||||
and install workflow through `1.0.0-beta.1`; runtime/resource foundation through
|
and install workflow through `1.0.0-beta.1`; runtime/resource foundation through
|
||||||
`1.0.0-beta.2`; standard-library stabilization through `1.0.0-beta.3`;
|
`1.0.0-beta.2`; standard-library stabilization through `1.0.0-beta.3`;
|
||||||
language-usability diagnostics through `1.0.0-beta.4`
|
language-usability diagnostics through `1.0.0-beta.4`; package/workspace
|
||||||
|
discipline through `1.0.0-beta.5`
|
||||||
|
|
||||||
Date: 2026-05-22
|
Date: 2026-05-22
|
||||||
|
|
||||||
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
|
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
|
||||||
reruns from a local checkout; beta.4 release-gate verification from the public
|
reruns from a local checkout; beta.5 release-gate verification from the public
|
||||||
monorepo
|
monorepo
|
||||||
|
|
||||||
Maturity: beta
|
Maturity: beta
|
||||||
@ -30,25 +31,26 @@ explicit types, explicit failure through `option` and `result`, lexical
|
|||||||
`unsafe`, and native compilation through the Glagol compiler to LLVM IR and
|
`unsafe`, and native compilation through the Glagol compiler to LLVM IR and
|
||||||
hosted executables.
|
hosted executables.
|
||||||
|
|
||||||
The current publication release, `1.0.0-beta.4`, keeps the first real
|
The current publication release, `1.0.0-beta.5`, keeps the first real
|
||||||
general-purpose beta language baseline from `1.0.0-beta` and records the first
|
general-purpose beta language baseline from `1.0.0-beta` and records the first
|
||||||
post-beta tooling/install hardening update plus the first runtime/resource
|
post-beta tooling/install hardening update plus the first runtime/resource
|
||||||
foundation update, the first standard-library stabilization update, and the
|
foundation update, the first standard-library stabilization update, and the
|
||||||
first language-usability diagnostics update. The beta baseline includes the
|
first language-usability diagnostics update, plus the first local
|
||||||
completed `u32` / `u64` unsigned scope, the staged stdlib breadth that makes
|
package/workspace discipline update. The beta baseline includes the completed
|
||||||
ordinary command-line programs practical, and the current nine-kernel
|
`u32` / `u64` unsigned scope, the staged stdlib breadth that makes ordinary
|
||||||
benchmark suite. This paper records the current beta technical state, the
|
command-line programs practical, and the current nine-kernel benchmark suite.
|
||||||
difference between Slovo and Lisp-family languages, the benchmark methodology,
|
This paper records the current beta technical state, the difference between
|
||||||
the beta.1 tooling update, the beta.2 runtime/resource foundation, the beta.3
|
Slovo and Lisp-family languages, the benchmark methodology, the beta.1 tooling
|
||||||
standard-library stabilization slice, the beta.4 diagnostics usability slice,
|
update, the beta.2 runtime/resource foundation, the beta.3 standard-library
|
||||||
and the remaining path from beta to stable.
|
stabilization slice, the beta.4 diagnostics usability slice, the beta.5 package
|
||||||
|
discipline slice, and the remaining path from beta to stable.
|
||||||
|
|
||||||
## 1. Scope
|
## 1. Scope
|
||||||
|
|
||||||
This document is a technical state paper for the current beta baseline. It
|
This document is a technical state paper for the current beta baseline. It
|
||||||
summarizes the behavior represented by the paired local Slovo and Glagol
|
summarizes the behavior represented by the paired local Slovo and Glagol
|
||||||
workspaces, with `1.0.0-beta` as the current language-surface baseline and
|
workspaces, with `1.0.0-beta` as the current language-surface baseline and
|
||||||
`1.0.0-beta.4` as the current publication baseline.
|
`1.0.0-beta.5` as the current publication baseline.
|
||||||
|
|
||||||
The support rule remains strict:
|
The support rule remains strict:
|
||||||
|
|
||||||
@ -60,7 +62,7 @@ The support rule remains strict:
|
|||||||
- partial parser recognition or speculative examples do not count as support
|
- partial parser recognition or speculative examples do not count as support
|
||||||
|
|
||||||
Historical `exp-*` releases remain experimental alpha maturity. The current
|
Historical `exp-*` releases remain experimental alpha maturity. The current
|
||||||
publication accompanies `1.0.0-beta.4`.
|
publication accompanies `1.0.0-beta.5`.
|
||||||
|
|
||||||
## 2. Design Thesis
|
## 2. Design Thesis
|
||||||
|
|
||||||
@ -359,9 +361,9 @@ python3 benchmarks/vec-string-eq-loop/run.py --mode cold-process --repeats 3 --w
|
|||||||
The benchmark rows below remain the full-suite `1.0.0-beta` publication
|
The benchmark rows below remain the full-suite `1.0.0-beta` publication
|
||||||
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
|
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
|
||||||
`1.0.0-beta.2` adds runtime/resource APIs, `1.0.0-beta.3` adds
|
`1.0.0-beta.2` adds runtime/resource APIs, `1.0.0-beta.3` adds
|
||||||
standard-library catalog and composition coverage, and `1.0.0-beta.4` improves
|
standard-library catalog and composition coverage, `1.0.0-beta.4` improves
|
||||||
diagnostics. None of these post-beta slices claims changed benchmark
|
diagnostics, and `1.0.0-beta.5` tightens package/workspace discipline. None of
|
||||||
performance.
|
these post-beta slices claims changed benchmark performance.
|
||||||
|
|
||||||
The exp-123 publication baseline widened the paired same-machine result set
|
The exp-123 publication baseline widened the paired same-machine result set
|
||||||
from seven rows to nine by adding two owned-vector kernels:
|
from seven rows to nine by adding two owned-vector kernels:
|
||||||
@ -482,14 +484,15 @@ Major remaining gaps before `1.0.0`:
|
|||||||
- semantic versioning and deprecation policy
|
- semantic versioning and deprecation policy
|
||||||
- a clear separation between stable and experimental features
|
- a clear separation between stable and experimental features
|
||||||
|
|
||||||
## 10. Path Beyond `1.0.0-beta.4`
|
## 10. Path Beyond `1.0.0-beta.5`
|
||||||
|
|
||||||
The beta threshold is now real. The next work should treat `1.0.0-beta` as
|
The beta threshold is now real. The next work should treat `1.0.0-beta` as
|
||||||
the language compatibility-governed baseline, `1.0.0-beta.1` as the first
|
the language compatibility-governed baseline, `1.0.0-beta.1` as the first
|
||||||
tooling/install hardening point, `1.0.0-beta.2` as the first runtime/resource
|
tooling/install hardening point, `1.0.0-beta.2` as the first runtime/resource
|
||||||
foundation point, and `1.0.0-beta.3` as the first standard-library
|
foundation point, and `1.0.0-beta.3` as the first standard-library
|
||||||
stabilization point, and `1.0.0-beta.4` as the first diagnostics usability
|
stabilization point, and `1.0.0-beta.4` as the first diagnostics usability
|
||||||
point, then move deliberately toward stable general-purpose status.
|
point, and `1.0.0-beta.5` as the first package/workspace discipline point,
|
||||||
|
then move deliberately toward stable general-purpose status.
|
||||||
|
|
||||||
Recommended sequence:
|
Recommended sequence:
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user