Release 1.0.0-beta.2

This commit is contained in:
sanjin 2026-05-22 12:27:24 +02:00
parent bbcdf01ce3
commit 7e628995a1
19 changed files with 118 additions and 87 deletions

View File

@ -1,7 +1,7 @@
# Beta.2 Runtime Resource Foundation Scope
This file tracks the first post-`1.0.0-beta.1` runtime/resource foundation
slice. It is main-branch work intended for a future `1.0.0-beta.2` bundle.
slice released as `1.0.0-beta.2`.
## Implemented In This Slice
@ -57,4 +57,4 @@ slice. It is main-branch work intended for a future `1.0.0-beta.2` bundle.
- focused resource/host tests must pass
- focused `std.fs` source facade tests must pass
- promotion-gate std facade alignment must pass
- full release gate must pass before tagging `1.0.0-beta.2`
- full release gate passed before tagging `1.0.0-beta.2`

View File

@ -21,7 +21,7 @@ implementation scope.
1. Harden monorepo release tooling, install flow, and common build/run loops
(`1.0.0-beta.1`).
2. Define runtime resource and host-error policy before broad IO and
networking (in progress after `1.0.0-beta.1` with read-only text file
networking (released in `1.0.0-beta.2` with read-only text file
handles plus narrow filesystem status and mutation calls).
3. Stabilize `lib/std` module boundaries and document beta-vs-stable APIs.
4. Improve language usability around entry points, `match`, aliases, and

View File

@ -6,7 +6,7 @@ This repository is the canonical public monorepo for the language design,
standard library source, compiler, runtime, examples, benchmarks, and technical
documents.
Current release: `1.0.0-beta.1`.
Current release: `1.0.0-beta.2`.
## Repository Layout
@ -24,9 +24,10 @@ scripts/ local release and document tooling
## Beta Scope
`1.0.0-beta.1` keeps the `1.0.0-beta` language baseline and adds the first
post-beta tooling/install hardening slice. The language baseline supports
practical local command-line programs and libraries with:
`1.0.0-beta.2` keeps the `1.0.0-beta` language baseline, includes the
`1.0.0-beta.1` tooling/install hardening slice, and adds the first
runtime/resource foundation bundle. The language baseline supports practical
local command-line programs and libraries with:
- modules, explicit imports, packages, and local workspaces
- `new`, `check`, `fmt`, `test`, `doc`, and `build`
@ -113,10 +114,9 @@ can still override standard-library search, `SLOVO_RUNTIME_C` or
`GLAGOL_RUNTIME_C` can override the runtime C input, and `GLAGOL_CLANG` can
select the Clang-compatible compiler.
## Main Branch After 1.0.0-beta.1
## 1.0.0-beta.2 Runtime Resource Foundation
The main branch now contains unreleased runtime/resource foundation work for a
future `1.0.0-beta.2` bundle:
The `1.0.0-beta.2` release adds beta-scoped runtime/resource foundation work:
- `std.fs.open_text_read_result`
- `std.fs.read_open_text_result`

2
compiler/Cargo.lock generated
View File

@ -4,4 +4,4 @@ version = 3
[[package]]
name = "glagol"
version = "1.0.0-beta.1"
version = "1.0.0-beta.2"

View File

@ -1,6 +1,6 @@
[package]
name = "glagol"
version = "1.0.0-beta.1"
version = "1.0.0-beta.2"
edition = "2021"
description = "Glagol, the first compiler for the Slovo language"
license = "MIT OR Apache-2.0"

View File

@ -58,10 +58,10 @@ Work:
- add runtime conformance tests for cleanup paths
- document that resource handles are beta values, not stable ABI promises
Current main-branch progress after `1.0.0-beta.1`: read-only text file
resource handles are implemented with `std.fs.open_text_read_result`,
`std.fs.read_open_text_result`, and `std.fs.close_result`. The same beta.2-pre
line also includes narrow filesystem status and mutation calls:
Released in `1.0.0-beta.2`: read-only text file resource handles are
implemented with `std.fs.open_text_read_result`,
`std.fs.read_open_text_result`, and `std.fs.close_result`. The same release
also includes narrow filesystem status and mutation calls:
`std.fs.exists`, `std.fs.is_file`, `std.fs.is_dir`,
`std.fs.remove_file_result`, and `std.fs.create_dir_result`. Matching
`lib/std/fs.slo` facades and focused runtime tests are in place. Writable

View File

@ -10,8 +10,19 @@ integration/readiness release, not the first real beta.
## Unreleased
Main currently contains the first runtime/resource foundation slice intended
for a future `1.0.0-beta.2` bundle:
No unreleased changes yet.
## 1.0.0-beta.2
Release label: `1.0.0-beta.2`
Release date: 2026-05-22
Release state: runtime/resource foundation beta update
### Summary
Glagol `1.0.0-beta.2` contains the first runtime/resource foundation slice:
- Glagol recognizes `std.fs.open_text_read_result`,
`std.fs.read_open_text_result`, `std.fs.close_result`, `std.fs.exists`,

View File

@ -22,13 +22,11 @@ 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.
Current stage: `1.0.0-beta.1`, released on 2026-05-22 as the first post-beta
tooling hardening update. It keeps the `1.0.0-beta` language/compiler support
baseline, which integrates the completed unsigned `u32`/`u64` compiler and
stdlib breadth scope from `exp-125` with the already promoted project/package
workflow, explicit std-source imports, concrete vector families, fixed arrays,
structs, enums, result/option, generated docs, formatter behavior, and
structured diagnostics.
Current stage: `1.0.0-beta.2`, released on 2026-05-22 as the first post-beta
runtime/resource foundation update. It keeps the `1.0.0-beta` language/compiler
support baseline and includes the `1.0.0-beta.1` tooling hardening release plus
beta-scoped `std.fs` resource handles, filesystem status checks, file removal,
and single-directory creation.
The final experimental precursor scope is `exp-125`. Its unsigned direct-value
flow, parse/format runtime lanes, and matching staged stdlib helper breadth

View File

@ -8,14 +8,27 @@ 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
experimental integration/readiness release, not as a beta maturity claim.
The current release is `1.0.0-beta.1`, published on 2026-05-22. It keeps the
`1.0.0-beta` language surface and adds the first post-beta tooling/install
hardening bundle.
The current release is `1.0.0-beta.2`, published on 2026-05-22. It keeps the
`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
foundation bundle.
## Unreleased
Main currently contains the first runtime/resource foundation slice intended
for a future `1.0.0-beta.2` bundle:
No unreleased changes yet.
## 1.0.0-beta.2
Release label: `1.0.0-beta.2`
Release name: Runtime Resource Foundation Bundle
Release date: 2026-05-22
Status: released beta runtime/resource foundation update on the `1.0.0-beta`
language baseline.
`1.0.0-beta.2` contains the first runtime/resource foundation slice:
- `std.fs.open_text_read_result : (string) -> (result i32 i32)` opens a
read-only text file and returns an opaque positive `i32` handle
@ -33,10 +46,10 @@ for a future `1.0.0-beta.2` bundle:
`read_text_via_handle_result`, `close_ok`, status helpers, and narrow
file/directory mutation helpers
This unreleased slice keeps handles beta-scoped. It does not add writable
handles, binary IO, directory handles, directory enumeration, recursive
filesystem operations, process handles, sockets, async IO, platform error
codes, rich host-error ADTs, or stable handle ABI/layout promises.
This release keeps handles beta-scoped. It does not add writable handles,
binary IO, directory handles, directory enumeration, recursive filesystem
operations, process handles, sockets, async IO, platform error codes, rich
host-error ADTs, or stable handle ABI/layout promises.
## 1.0.0-beta.1

View File

@ -10,13 +10,11 @@ Long-horizon planning lives in
release train from the historical `v2.0.0-beta.1` tag toward and beyond the
first real general-purpose beta Slovo contract.
Current stage: `1.0.0-beta.1`, released on 2026-05-22 as the first post-beta
tooling hardening update. It keeps the `1.0.0-beta` language contract, which
integrates the completed unsigned `u32`/`u64` numeric and staged-stdlib breadth
scope from `exp-125` with the already promoted project/package workflow,
explicit std-source imports, concrete vector families, fixed arrays, structs,
enums, result/option, generated docs, formatter behavior, and structured
diagnostics.
Current stage: `1.0.0-beta.2`, released on 2026-05-22 as the first post-beta
runtime/resource foundation update. It keeps the `1.0.0-beta` language
contract and includes the `1.0.0-beta.1` tooling hardening release plus
beta-scoped `std.fs` resource handles, filesystem status checks, file removal,
and single-directory creation.
The final experimental precursor scope is `exp-125`, defined in
`.llm/EXP_125_UNSIGNED_U32_U64_NUMERIC_AND_STDLIB_BREADTH_ALPHA.md`. Its

View File

@ -1,7 +1,8 @@
# Slovo v1 Specification
Status: living beta contract for `1.0.0-beta`, with the post-beta
`1.0.0-beta.1` tooling/install update. The language contract integrates
`1.0.0-beta.1` tooling/install update and `1.0.0-beta.2` runtime/resource
foundation update. The language contract integrates
promoted language slices through `exp-125` and the historical publication
baseline through `exp-123`. `1.0.0-beta` is the first real general-purpose
beta release. `exp-125` completed the unsigned numeric and stdlib breadth
@ -971,9 +972,8 @@ runtime C input for native builds.
### 4.4.2 Runtime Resource Foundation Additions
Post-`1.0.0-beta.1` main adds the first beta resource-handle foundation for
read-only text files. This is intended for a future `1.0.0-beta.2` bundle and
does not change source syntax.
`1.0.0-beta.2` adds the first beta resource-handle foundation for
read-only text files. It does not change source syntax.
`std.fs.open_text_read_result <path>` has signature
`(string) -> (result i32 i32)`. Success returns `ok handle`, where `handle` is
@ -988,7 +988,7 @@ handle and returns `ok text`. Invalid, closed, or failed reads return `err 1`.
`(i32) -> (result i32 i32)`. Success closes the handle and returns `ok 0`.
Invalid, already closed, or failed close operations return `err 1`.
The same beta.2-pre runtime foundation adds narrow filesystem status and
The same `1.0.0-beta.2` runtime foundation adds narrow filesystem status and
mutation calls:
```text

View File

@ -15,10 +15,10 @@ does not add source syntax, runtime APIs, standard library functions, manifest
schema versions, ABI/layout promises, runtime headers/libraries, or beta
maturity.
Post-`1.0.0-beta.1` main-branch work adds the first runtime resource
foundation calls for read-only text file handles. These calls use the existing
concrete `result` families and are intended for a future `1.0.0-beta.2`
bundle. Handles are positive opaque `i32` process-local tokens, not stable
`1.0.0-beta.2` adds the first runtime resource foundation calls for read-only
text file handles and narrow filesystem status/mutation operations. These calls
use the existing concrete `result` families where host failures need to be
observable. Handles are positive opaque `i32` process-local tokens, not stable
file descriptors or ABI values.
The exp-era catalog is closed to names promoted through exp-101. exp-29,
@ -89,14 +89,14 @@ source-level result helper names are the `std.result.*` names cataloged below.
| `std.env.get_result` | `(string) -> (result string i32)` | exp-10 | `examples/supported/host-io-result.slo` | Returns `ok` with environment value when present, or `err 1` when missing. | Uses existing standard-runtime usage recording if present; no exp-10-specific schema field. | Rich host error ADTs, env mutation/enumeration, platform codes. |
| `std.fs.read_text_result` | `(string) -> (result string i32)` | exp-10 | `examples/supported/host-io-result.slo` | Returns `ok` with file contents on success, or `err 1` on ordinary host read failure. | Uses existing standard-runtime usage recording if present; no exp-10-specific schema field. | Binary, directory, streaming, async APIs, rich host error ADTs. |
| `std.fs.write_text_result` | `(string, string) -> (result i32 i32)` | exp-10 | `examples/supported/host-io-result.slo` | Returns `ok 0` on success, or `err 1` on ordinary host write failure. | Uses existing standard-runtime usage recording if present; no exp-10-specific schema field. | Binary, directory, streaming, async APIs, rich host error ADTs. |
| `std.fs.exists` | `(string) -> bool` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Returns `true` when host metadata lookup succeeds for the path, otherwise `false`. | Uses existing standard-runtime usage recording if present; no schema change. | Rich host errors, symlink policy, permissions detail, stable platform metadata model. |
| `std.fs.is_file` | `(string) -> bool` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Returns `true` when the path exists and host metadata classifies it as a regular file. | Uses existing standard-runtime usage recording if present; no schema change. | Rich metadata, symlink policy, stable platform file-kind model. |
| `std.fs.is_dir` | `(string) -> bool` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Returns `true` when the path exists and host metadata classifies it as a directory. | Uses existing standard-runtime usage recording if present; no schema change. | Directory handles, enumeration, recursive traversal, symlink policy, stable platform file-kind model. |
| `std.fs.remove_file_result` | `(string) -> (result i32 i32)` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Removes one file; success returns `ok 0`, while ordinary host failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Recursive removal, directory removal, rich host errors, platform-specific error codes. |
| `std.fs.create_dir_result` | `(string) -> (result i32 i32)` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Creates one directory; success returns `ok 0`, while existing paths or ordinary host failure return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Recursive creation, permissions/mode policy, directory handles, rich host errors, platform-specific error codes. |
| `std.fs.open_text_read_result` | `(string) -> (result i32 i32)` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Opens a text file for read-only resource-handle flow; success returns `ok handle` where `handle` is a positive opaque process-local `i32`, and ordinary open or handle-table failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Writable handles, binary IO, directory handles, process handles, sockets, async IO, platform-specific error codes, stable handle ABI/layout. |
| `std.fs.read_open_text_result` | `(i32) -> (result string i32)` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Reads remaining text from an open read handle; success returns `ok text`, while invalid, closed, or failed reads return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Chunked reads, seek, buffering controls, binary IO, async IO, platform-specific error codes, stable handle ABI/layout. |
| `std.fs.close_result` | `(i32) -> (result i32 i32)` | post-`1.0.0-beta.1` main | `examples/projects/std-layout-local-fs` | Closes an open resource handle; success returns `ok 0`, while invalid, closed, or failed close operations return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Finalizers, destructors, affine ownership, automatic cleanup, stable handle ABI/layout. |
| `std.fs.exists` | `(string) -> bool` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Returns `true` when host metadata lookup succeeds for the path, otherwise `false`. | Uses existing standard-runtime usage recording if present; no schema change. | Rich host errors, symlink policy, permissions detail, stable platform metadata model. |
| `std.fs.is_file` | `(string) -> bool` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Returns `true` when the path exists and host metadata classifies it as a regular file. | Uses existing standard-runtime usage recording if present; no schema change. | Rich metadata, symlink policy, stable platform file-kind model. |
| `std.fs.is_dir` | `(string) -> bool` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Returns `true` when the path exists and host metadata classifies it as a directory. | Uses existing standard-runtime usage recording if present; no schema change. | Directory handles, enumeration, recursive traversal, symlink policy, stable platform file-kind model. |
| `std.fs.remove_file_result` | `(string) -> (result i32 i32)` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Removes one file; success returns `ok 0`, while ordinary host failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Recursive removal, directory removal, rich host errors, platform-specific error codes. |
| `std.fs.create_dir_result` | `(string) -> (result i32 i32)` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Creates one directory; success returns `ok 0`, while existing paths or ordinary host failure return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Recursive creation, permissions/mode policy, directory handles, rich host errors, platform-specific error codes. |
| `std.fs.open_text_read_result` | `(string) -> (result i32 i32)` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Opens a text file for read-only resource-handle flow; success returns `ok handle` where `handle` is a positive opaque process-local `i32`, and ordinary open or handle-table failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Writable handles, binary IO, directory handles, process handles, sockets, async IO, platform-specific error codes, stable handle ABI/layout. |
| `std.fs.read_open_text_result` | `(i32) -> (result string i32)` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Reads remaining text from an open read handle; success returns `ok text`, while invalid, closed, or failed reads return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Chunked reads, seek, buffering controls, binary IO, async IO, platform-specific error codes, stable handle ABI/layout. |
| `std.fs.close_result` | `(i32) -> (result i32 i32)` | `1.0.0-beta.2` | `examples/projects/std-layout-local-fs` | Closes an open resource handle; success returns `ok 0`, while invalid, closed, or failed close operations return `err 1`. | Uses existing standard-runtime usage recording if present; no schema change. | Finalizers, destructors, affine ownership, automatic cleanup, stable handle ABI/layout. |
| `std.random.i32` | `() -> i32` | exp-11 | `examples/supported/random.slo` | Returns a non-negative implementation-owned random `i32`; unavailable randomness traps as `slovo runtime error: random i32 unavailable`. | Uses existing standard-runtime usage recording if present; no randomness-specific schema field. | Seed APIs, crypto/security promises, ranges, bytes, floats, UUIDs, stable RNG ABI/layout. |
| `std.io.read_stdin_result` | `() -> (result string i32)` | exp-12 | `examples/supported/stdin-result.slo` | Reads remaining stdin as text; success returns `ok` text, ordinary EOF with no bytes returns `ok ""`, ordinary host/input failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no stdin-specific schema field. | Trap stdin, line APIs, prompts, terminal mode, binary/streaming/async stdin. |
| `std.string.parse_i32_result` | `(string) -> (result i32 i32)` | exp-13 | `examples/supported/string-parse-i32-result.slo` | Parses an entire ASCII decimal signed `i32`; success returns `ok` value, ordinary parse failure returns `err 1`. | Uses existing standard-runtime usage recording if present; no parse-specific schema field. | Trap parse, floats/bools/bytes, trimming, locale/radix/underscore/plus parsing, rich parse errors, Unicode digits, slicing/indexing. |

View File

@ -7,10 +7,10 @@ Examples are split by current compiler support.
Entries in this section are current compiler support under the matching
release notes. The current compiler-supported language baseline is
`1.0.0-beta`; `1.0.0-beta.1` adds tooling/install hardening without changing
these source-language fixtures. The language baseline absorbs the final
exp-125 unsigned precursor scope alongside the already promoted
project/package, stdlib-source, collection, composite-data, formatter, and
diagnostics surface.
these source-language fixtures. `1.0.0-beta.2` adds beta-scoped
runtime/resource foundation APIs. The language baseline absorbs the final
exp-125 unsigned precursor scope alongside the already promoted project/package,
stdlib-source, collection, composite-data, formatter, and diagnostics surface.
`supported/add.slo` is the current executable promotion fixture. Glagol can parse it,
lower it, type-check it, emit LLVM for it, and cover that output with an automated

View File

@ -5,15 +5,16 @@
Sanjin Gumbarevic<br>
hermeticum_lab@protonmail.com
Publication release: `1.0.0-beta.1`
Publication release: `1.0.0-beta.2`
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`
Date: 2026-05-22
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
reruns from a local checkout; beta.1 release-gate verification from the public
reruns from a local checkout; beta.2 release-gate verification from the public
monorepo
Maturity: beta
@ -25,14 +26,16 @@ Slovo. It exists to make the language support boundary inspectable: tokens,
S-expression tree, AST, typed AST, LLVM IR, hosted native executable, tests,
diagnostics, and release documents should agree.
The current publication release, `1.0.0-beta.1`, keeps the first real
The current publication release, `1.0.0-beta.2`, keeps the first real
general-purpose beta toolchain baseline from `1.0.0-beta` and records the
first post-beta tooling/install hardening update. The beta baseline includes
first post-beta tooling/install hardening update plus the first
runtime/resource foundation update. The beta baseline includes
the completed `u32` / `u64` unsigned compiler and stdlib breadth scope
alongside the current nine-kernel benchmark suite. This paper records the
current beta implementation surface, the benchmark method and results, the
distinction between Glagol and Lisp-family implementations, the beta.1
tooling update, and the compiler path from beta to stable.
distinction between Glagol and Lisp-family implementations, the beta.1 tooling
update, the beta.2 runtime/resource foundation, and the compiler path from beta
to stable.
## 1. Compiler Thesis
@ -116,8 +119,9 @@ At the current technical behavior beta baseline, Glagol supports:
- benchmark scaffolds for Slovo, C, Rust, Python, Clojure, and Common
Lisp/SBCL, with `cold-process` and `hot-loop` timing modes
The current release, `1.0.0-beta.1`, is a beta tooling update on the first
release that may honestly use beta maturity language for this toolchain.
The current release, `1.0.0-beta.2`, is a beta runtime/resource foundation
update on the first release line that may honestly use beta maturity language
for this toolchain.
## 4. Diagnostics And Support Discipline
@ -273,8 +277,9 @@ python3 benchmarks/vec-string-eq-loop/run.py --mode cold-process --repeats 3 --w
## 7. Benchmark Results
The benchmark rows below remain the full-suite `1.0.0-beta` publication
baseline. `1.0.0-beta.1` changes tooling and install workflow only; it does
not claim changed benchmark performance.
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
`1.0.0-beta.2` adds runtime/resource APIs; neither release claims changed
benchmark performance.
The exp-123 publication baseline widened the paired same-machine result set
from seven rows to nine by adding two owned-vector kernels:
@ -362,10 +367,11 @@ coverage and compatibility:
- package behavior becoming stable before dependency, manifest, and versioning
rules are precise
## 9. Path Beyond `1.0.0-beta.1`
## 9. Path Beyond `1.0.0-beta.2`
Glagol now implements the first real beta Slovo contract and has a first
post-beta tooling/install hardening release. The remaining path is from beta
Glagol now implements the first real beta Slovo contract, the first
post-beta tooling/install hardening release, and the first runtime/resource
foundation release. The remaining path is from beta
to stable.
Recommended compiler sequence:

Binary file not shown.

Binary file not shown.

View File

@ -5,15 +5,16 @@
Sanjin Gumbarevic<br>
hermeticum_lab@protonmail.com
Publication release: `1.0.0-beta.1`
Publication release: `1.0.0-beta.2`
Technical behavior baseline: language surface through `1.0.0-beta`; tooling
and install workflow through `1.0.0-beta.1`
and install workflow through `1.0.0-beta.1`; runtime/resource foundation through
`1.0.0-beta.2`
Date: 2026-05-22
Evidence source: paired local Slovo/Glagol monorepo verification and benchmark
reruns from a local checkout; beta.1 release-gate verification from the public
reruns from a local checkout; beta.2 release-gate verification from the public
monorepo
Maturity: beta
@ -28,14 +29,16 @@ explicit types, explicit failure through `option` and `result`, lexical
`unsafe`, and native compilation through the Glagol compiler to LLVM IR and
hosted executables.
The current publication release, `1.0.0-beta.1`, keeps the first real
The current publication release, `1.0.0-beta.2`, keeps the first real
general-purpose beta language baseline from `1.0.0-beta` and records the first
post-beta tooling/install hardening update. The beta baseline includes the
post-beta tooling/install hardening update plus the first runtime/resource
foundation update. The beta baseline includes the
completed `u32` / `u64` unsigned scope, the staged stdlib breadth that makes
ordinary command-line programs practical, and the current nine-kernel
benchmark suite. This paper records the current beta technical state, the
difference between Slovo and Lisp-family languages, the benchmark methodology,
the beta.1 tooling update, and the remaining path from beta to stable.
the beta.1 tooling update, the beta.2 runtime/resource foundation, and the
remaining path from beta to stable.
## 1. Scope
@ -351,8 +354,9 @@ python3 benchmarks/vec-string-eq-loop/run.py --mode cold-process --repeats 3 --w
## 7. Benchmark Results
The benchmark rows below remain the full-suite `1.0.0-beta` publication
baseline. `1.0.0-beta.1` changes tooling and install workflow only; it does
not claim changed benchmark performance.
baseline. `1.0.0-beta.1` changes tooling and install workflow, and
`1.0.0-beta.2` adds runtime/resource APIs; neither release claims changed
benchmark performance.
The exp-123 publication baseline widened the paired same-machine result set
from seven rows to nine by adding two owned-vector kernels:
@ -473,11 +477,12 @@ Major remaining gaps before `1.0.0`:
- semantic versioning and deprecation policy
- a clear separation between stable and experimental features
## 10. Path Beyond `1.0.0-beta.1`
## 10. Path Beyond `1.0.0-beta.2`
The beta threshold is now real. The next work should treat `1.0.0-beta` as
the language compatibility-governed baseline, and `1.0.0-beta.1` as the first
tooling/install hardening point, then move deliberately toward stable
the language compatibility-governed baseline, `1.0.0-beta.1` as the first
tooling/install hardening point, and `1.0.0-beta.2` as the first
runtime/resource foundation point, then move deliberately toward stable
general-purpose status.
Recommended sequence:

Binary file not shown.