Aether 0.470.0
Immutable
release. Only release title and notes can be modified.
What's new in 0.470.0
Fixed
- Benchmark runner reported a negative
cv_pct(#1352). The
coefficient of variation was computed as(best - worst) * 50 / meanin
32-bit int, so for the fastest patterns (skynet and counting run in the
hundreds of millions of msg/sec) the multiply overflowed before the
divide and the result came out negative, on exactly the numbers most
likely to be quoted. Span, mean and CV are now 64-bit, the run
accumulator is too (five runs at 250M already approach the int32
ceiling andBENCH_RUNSis user-settable), and a negative value is
refused rather than published, since a coefficient of variation cannot
be negative.docs/performance-benchmarks.mdstates the guarantee. - Constant folding did not preserve runtime semantics for
int, which
is what let the overflow above hide during development. The folder
evaluates indouble, so(250000000 - 200000000) * 50 / 225000000
folded to11while the same expression overintvariables evaluated
to-7: the literal form looked correct. The fold now wraps exactly as
the runtime does and reports the overflow (newwarning[W1003], with
the exact value, the wrapped value, and how to widen). No code in the
tree trips it. benchmarks/http/baseline_results.txtwas committed containing only a
header (#1353). The harness writes the header, starts the server, then
measures; the server had failed to start,set -eexited, and the stub
was committed. The generated file is removed from the tree and
gitignored (it is machine-specific), and both HTTP harnesses now
preflightwrkbefore building anything, write to a temp file and
publish only on success (so an interrupted run leaves no truncated
artifact), and report the actual cause when the server cannot start
instead of a bare "failed".
Downloads
| Platform | Architecture | File | Notes |
|---|---|---|---|
| Linux | x86_64 | aether-0.470.0-linux-x86_64.tar.gz |
|
| macOS | x86_64 | aether-0.470.0-macos-x86_64.tar.gz |
|
| macOS | arm64 | aether-0.470.0-macos-arm64.tar.gz |
|
| Windows | x86_64 | aether-0.470.0-windows-x86_64.zip |
Quick install
Linux / macOS
# Download the archive for your platform, then:
tar -xzf aether-0.470.0-<platform>.tar.gz
export PATH="$PWD/bin:$PATH"
ae versionWindows
Extract the .zip archive, then run bin\ae.exe version from the extracted folder.
Documentation: https://github.com/aether-lang-org/aether#readme