Skip to content

Releases

Nyx v5.0.1 — Daydream

Choose a tag to compare

@justsomeone-e justsomeone-e released this 08 Sep 12:02

Nyx v5.0.1 — Daydream

Nyx v5.0.1 is a Windows and native self-host reliability patch for the stable Daydream compiler line. It fixes the failures reported in issue #6 without changing the v5 language, Typed HIR v1, Bundle ABI v1, or backend maturity contracts.

Fixed

  • The Nyx-authored type checker now registers C++ foreign-import aliases before checking function bodies, so examples/07_foreign_cpp.nyx recognizes fs.
  • Optional null values now lower to std::nullopt instead of nullptr in the self-hosted C++ emitter.
  • Generated C++ defines _CRT_SECURE_NO_WARNINGS before CRT headers, avoiding MSVC and clang-cl getenv deprecation diagnostics.
  • examples/04_in_file_tests.nyx now checks the actual "Holy Easy" concatenation result, allowing all three in-file tests to run.
  • The Windows installer prefers npm.cmd or npm.exe when PowerShell blocks npm.ps1, and an optional VS Code extension failure no longer aborts the core compiler installation.
  • Installation docs now distinguish the release compiler nyxc.exe from the installer-created unified command nyx.cmd; no separate nyx.exe asset is expected.

Install

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v5.0.1'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.1/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.1/install.sh | NYX_RELEASE_TAG=v5.0.1 bash

Verification

A freshly built standalone native compiler compiled and executed all three reported examples successfully on Windows. The tagged GitHub Actions workflow is authoritative for the complete regression battery, Stage1 → Stage2 → Stage3 reproducibility, Python/Nyx canonical Typed HIR parity, four-platform native binaries, VSIX, checksums, SBOM, and provenance.

C++20, JavaScript, and Python remain stable backends. LLVM and C17 remain explicitly experimental.

Nyx v5.0.0 — Daydream

Choose a tag to compare

@justsomeone-e justsomeone-e released this 07 Sep 05:27

Nyx v5.0.0 — Daydream

Nyx v5.0.0 is the stable v5 compiler and toolchain release.

This release preserves the stable C++20, JavaScript, and Python targets while introducing the direct LLVM IR pipeline as an explicitly experimental backend.

Highlights

  • Stable Typed HIR v1 compiler pipeline
  • Reproducible native self-hosting
  • Stable C++20, JavaScript, and Python targets
  • Direct LLVM IR generation through the compiler API and CLI
  • nyx build --target llvm
  • nyx run --target llvm
  • Scalar LLVM support for integers, floats, booleans, structs, and arrays
  • Checked array indexing and deterministic bounds diagnostics
  • Experimental C17 scalar backend
  • WebAssembly tooling and Bundle ABI v1
  • Updated VS Code language support extension
  • Deterministic release packaging and SHA-256 manifests

Backend status

  • C++20: Stable
  • JavaScript: Stable
  • Python: Stable
  • WebAssembly: Supported
  • Rust: Preview
  • C17: Experimental
  • LLVM: Experimental

LLVM and C17 are not promoted to stable backend status in v5.0.0.

Installation

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v5.0.0'
irm https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.0/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.0/install.sh | NYX_RELEASE_TAG=v5.0.0 bash

LLVM builds require Clang to be available on PATH.

Release assets

This release includes native binaries for Windows x64, Linux x64, macOS x64, and macOS ARM64, source archives, the VS Code extension, SHA-256 manifests, SBOM, and provenance metadata where available.

Verify downloaded files using the provided SHA-256 manifest.

Validation

The stable release was prepared from tag v5.0.0.

Stable backend contracts remain protected. Experimental backends are capability-gated and do not change the default C++20 backend.

Full changelog:

v4.5.0...v5.0.0

Nyx v5.0.0-rc.1 — Daydream

Pre-release

Choose a tag to compare

@justsomeone-e justsomeone-e released this 06 Sep 23:02

Nyx v5.0.0-rc.1 — Daydream

Daydream is the first release candidate for the Nyx v5 compiler line.

This release moves direct LLVM IR generation from an isolated scalar experiment into the canonical Nyx compiler API and CLI pipeline. C++20 remains the default stable native backend while LLVM continues as an explicitly experimental target.

Highlights

  • Added canonical Typed HIR → LLVM IR compilation.
  • Added nyx build <file.nyx> --target llvm.
  • Added nyx run <file.nyx> --target llvm.
  • Generated .ll files compile directly with Clang without generated C++.
  • Added signed 64-bit wrapping integer semantics.
  • Added IEEE binary64 floating-point and Boolean operations.
  • Added functions, recursion, conditionals, loops, break, and continue.
  • Added scalar-field LLVM Struct types.
  • Added Struct construction, field access, mutation, and value-copy semantics.
  • Added stack-owned Array<int>, Array<float>, and Array<bool>.
  • Added checked Array indexing and deterministic bounds failures.
  • Added independent local Array copies.
  • Added function-boundary Array copies using llvm.memcpy.
  • Added Array length methods and for value in array lowering.
  • Added multi-argument print with C++ output parity.
  • Connected LLVM to the compiler API, CLI, legacy facade, and capability registry.

LLVM example

fn main() {
    var values: Array<int> = [10, 20, 30]
    var copied: Array<int> = values

    copied[1] = 99

    print("original:", values[1])
    print("copy:", copied[1])
}
nyx build main.nyx --target llvm
nyx run main.nyx --target llvm

Generated LLVM IR is preserved at:

build/llvm/main.ll

LLVM maturity

LLVM remains experimental.

Not yet supported through the LLVM backend:

  • Escaping or returned Arrays
  • Nested Arrays
  • Aggregate Struct fields
  • Complete string ownership
  • Exceptions
  • Tasks and closures
  • Complete standard-library bindings
  • LLVM emission from the native self-hosted compiler

Python remains the stage-0 orchestration frontend for this experimental backend. The native self-hosted compiler retains its existing C++ emission path.

Install

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v5.0.0-rc.1'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.0-rc.1/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v5.0.0-rc.1/install.sh | NYX_RELEASE_TAG=v5.0.0-rc.1 bash

LLVM builds require Clang on PATH.

Assets

  • nyx-v5.0.0-rc.1-universal.zip
  • nyx-v5.0.0-rc.1-source.tar.gz
  • nyx-language-support-v5.0.0-rc.1.vsix
  • nyxc-windows-x86_64.exe
  • nyxc-windows-x86_64.exe.sha256
  • SHA256SUMS

The deterministic source archives correspond to commit 98d7c770b384339ca0240fd46719f934bec9293b.

Validation

The following targeted gates passed:

  • Version contract
  • Public compiler API
  • Direct LLVM backend suite
  • Real LLVM CLI build and execution
  • VS Code extension contract
  • Deterministic release packaging
  • Local asset SHA-256 verification

The tagged GitHub Actions workflow remains the authoritative cross-platform release gate.

This is a pre-release. The LLVM backend is not stable yet.

Nyx v4.5.0 — Ivory

Choose a tag to compare

@justsomeone-e justsomeone-e released this 06 Sep 20:32
df4a55a

Nyx v4.5.0 — Ivory

Ivory is the compatibility bridge between the stable Nyx v4 language contract and the upcoming v5 compiler architecture.

This release strengthens the Typed HIR pipeline, standard library, package tooling, editor integration, WebAssembly support, and secondary backends without changing the default C++20 backend.

Highlights

  • Expanded Typed HIR verification and backend capability contracts.
  • Improved Python/Nyx canonical HIR parity.
  • Extended Rust support for value-copy semantics, lexical defer, payload enums, Result, Option, tasks, channels, and crate imports.
  • Added WASI preview1 capabilities and improved WebAssembly Array and string handling.
  • Added fallible std/str, std/path, and std/process APIs.
  • Added deterministic package resolution, SemVer ranges, offline caching, lockfiles, and SHA-256 verification.
  • Improved VS Code diagnostics, references, rename support, and semantic tokens.
  • Added real consumer examples for native CLI, host embedding, WebAssembly, and package consumption.
  • Added experimental scalar C17 and direct LLVM IR emitters.
  • Added deterministic release packaging and compiler benchmark infrastructure.

Backend status

Stable

  • C++20
  • JavaScript ES2022
  • Python 3

Beta

  • Rust 2021
  • WebAssembly
  • React 19
  • x86-64 Assembly

Experimental

  • C17
  • Direct LLVM IR

The default backend remains C++20.

Install

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v4.5.0'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v4.5.0/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v4.5.0/install.sh | NYX_RELEASE_TAG=v4.5.0 bash

Assets

  • nyx-v4.5.0-universal.zip
  • nyx-v4.5.0-source.tar.gz
  • nyx-language-support-v4.5.0.vsix
  • nyxc-windows-x86_64.exe
  • nyxc-windows-x86_64.exe.sha256
  • SHA256SUMS

The deterministic source archives correspond to commit 741b3577dca717090066ef9e47ddda5b5aa86c89.

Linux and macOS native binaries, SBOM files, and provenance attestations should be obtained from the successful tagged GitHub Actions workflow.

Verify downloaded files against SHA256SUMS before installation.

Nyx v4.0.0 Nirvana

Choose a tag to compare

@justsomeone-e justsomeone-e released this 05 Sep 20:08

Nyx v4.0.0 — Nirvana

Nyx v4.0.0 establishes the stable language and toolchain contract for the
compiler-focused v4 line. It incorporates the unpublished RC3 work into Nirvana.
The stable semantic set is C++20/native, JavaScript, and Python. Rust,
WebAssembly, React, and assembly remain available under their explicit beta
capability contracts; this release does not promote those backends to stable.

These notes are prepared for publication. The exact release revision, platform
validation, and artifact evidence are tracked in the
Nirvana release checklist.

Highlights

  • Self-host lexing decodes the source into code points once, avoiding repeated
    whole-source scans. Generated C++ string literals retain their full UTF-8
    byte length, including combining characters and embedded NULs.
  • Stable backends agree on empty/out-of-range string indexing and code-point
    length methods, backed by focused runtime regressions.
  • Nyx-authored lexer, parser, type checker, typed-HIR lowerer, and C++ emitter
    remain reproducible through the native stage-1 -> stage-2 -> stage-3 chain.
  • Rust 2021 now lowers postfix ? through typed HIR and runs active defer
    expressions in LIFO order before an early Err return.
  • JavaScript builds support import-safe ES2022 .mjs output with explicit
    exports and no implicit main() side effect.
  • WebAssembly adds deterministic borrowed scalar-struct parameters, typed JS
    object marshalling, generated TypeScript interfaces, and explicit
    array/struct ABI capability metadata.
  • nyx build --target wasm --wasi emits WASI preview1 executables with
    fd_write, _start, and UTF-8 string stdout support.
  • Unsupported advanced semantics are rejected through capability-derived
    E3001 diagnostics instead of target-specific silent approximations.
  • Tour of Nyx grows from 67 to 81 verified exercises across 21 modules, adding
    payload enums, Result propagation, collection transforms, async task
    semantics, Unicode expressions, and real standard-library boundaries.
  • The browser example suite expands the typed std/web Canvas surface while
    keeping generated adapters as the host bridge.
  • The stable HIR runtime trio (cpp, js, python) retains shared typed-HIR
    semantics, including independent Array/Struct value copies and code-point
    based Unicode string length, indexing, and iteration. Rust, WASM, React, and
    assembly remain governed by their explicit capability contracts.
  • The release includes native-first installers, a local VS Code .vsix,
    deterministic source archives, checksums, an SPDX SBOM, and GitHub provenance
    attestations once the tagged workflow completes.

Scope

The Maya scope reset remains in force. Microcontroller/freestanding firmware,
board profiles, flashing, and physical HAL modules are not part of Nyx v4.
The active scope is compiler correctness, HIR parity, self-hosting, native and
WebAssembly output, readable syntax, diagnostics, and deterministic tooling.

Install Nirvana

The following pinned commands become available when the v4.0.0 tag and
matching release assets are published.

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v4.0.0'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0/install.sh | NYX_RELEASE_TAG=v4.0.0 bash

For a reviewed installation path, download the matching release archive, inspect
the installer, verify SHA256SUMS, then run it locally.

Validation

  • The maintainer reported 48/48 suites and the 138/138 regression battery
    passing after the self-host UTF-8 fixes. Later string boundary and length
    method fixes passed targeted C++/JavaScript/Python runtime tests. The full
    suite must be rerun on the final release revision; these are separate results.
  • Release gates include the 138-point regression battery, 530-case fuzz corpus,
    Python/Nyx HIR byte parity, Rust/JS/WASM backend conformance, Bundle/host ABI
    runtime conformance, all 81 Tour exercises, deterministic package locks, and
    native self-host reproducibility.
  • The tagged GitHub Actions workflow validates the release on Windows, Linux,
    Intel macOS, and ARM macOS and
    produces the platform artifacts. Treat published checksums and attestations
    from that workflow as the release evidence.

After Nirvana

v4.0.x carries compatible fixes. v4.5.0 prepares tooling, libraries, measured
performance improvements, and v5 migration guidance while preserving the v4
source, HIR, and ABI contracts. New backend experiments and breaking designs
are tracked separately from the stable v4 promise.

nyx v4.0.0-rc.2 (Official Release)

Choose a tag to compare

@github-actions github-actions released this 04 Sep 20:28

Nyx v4.0.0-rc.2 — Bodhi

Nyx v4.0.0-rc.2 is the WebAssembly/browser release candidate for the
compiler-focused v4 line. It is intended for evaluation, compatibility testing, and feedback;
it is not the v4.0.0 Nirvana stable release and does not freeze every public
API.

Highlights

  • Nyx-authored lexer, parser, type checker, typed-HIR lowerer, and C++ emitter
    remain reproducible through the native stage-1 -> stage-2 -> stage-3 chain.
  • nyx build --target wasm and nyx bundle emit valid WAT/WASM, a grow-safe
    ES2022 loader, pointer-free TypeScript declarations, and optional npm package
    metadata in one compiler pass.
  • The versioned nyx_host_v1 import contract powers typed std/web DOM,
    event, lifecycle, and Canvas operations with a checked host ABI.
  • npm bundles can include React 19, Vue 3, and Svelte 5 adapters. The pure-Nyx
    browser Pong example exercises keyboard input and animation without handwritten
    application JavaScript.
  • Local path dependencies resolve recursively into deterministic,
    slash-normalized, content-hashed lock entries with cycle diagnostics.
  • Transparent aliases now type-check identically in the Python and Nyx-authored
    frontends.
  • The stable HIR runtime trio (cpp, js, python) retains shared typed-HIR
    semantics. Rust, WASM, React, and assembly remain governed by their explicit
    capability contracts.
  • The release includes native-first installers, a local VS Code .vsix,
    deterministic source archives, checksums, an SPDX SBOM, and GitHub provenance
    attestations once the tagged workflow completes.

Scope

The Maya scope reset remains in force. Microcontroller/freestanding firmware,
board profiles, flashing, and physical HAL modules are not part of Nyx v4 RC2.
The active scope is compiler correctness, HIR parity, self-hosting, native and
WebAssembly output, readable syntax, diagnostics, and deterministic tooling.

Install RC2

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v4.0.0-rc.2'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0-rc.2/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0-rc.2/install.sh | NYX_RELEASE_TAG=v4.0.0-rc.2 bash

For a reviewed installation path, download the matching release archive, inspect
the installer, verify SHA256SUMS, then run it locally.

Validation

  • The unified local test framework passed completely.
  • Release gates include the 138-point regression battery, 530-case fuzz corpus,
    Python/Nyx HIR byte parity, Bundle/host ABI runtime conformance, deterministic
    package locks, and native self-host reproducibility.
  • The tagged GitHub Actions workflow validates the full release candidate and
    produces the platform artifacts. Treat published checksums and attestations
    from that workflow as the release evidence.

Full Changelog: v4.0.0-rc.1...v4.0.0-rc.2

nyx v4.0.0-rc.1 (Official Release)

Choose a tag to compare

@justsomeone-e justsomeone-e released this 02 Sep 08:09

Nyx v4.0.0-rc.1 — Samsara

Nyx v4.0.0-rc.1 is the first public release candidate for the compiler-focused
v4 line. It is intended for evaluation, compatibility testing, and feedback;
it is not the v4.0.0 Nirvana stable release and does not freeze every public
API.

Highlights

  • Nyx-authored lexer, parser, type checker, typed-HIR lowerer, and C++ emitter
    remain reproducible through the native stage-1 -> stage-2 -> stage-3 chain.
  • Default arguments now lower consistently through the Python and self-hosted
    paths, including calls that omit trailing defaulted parameters.
  • Flat array and struct destructuring is available with single-evaluation
    semantics, checked bounds/arity failures, const bindings, and hygienic
    compiler temporaries.
  • The stable HIR runtime trio (cpp, js, python) retains shared typed-HIR
    semantics. Rust, WASM, React, and assembly remain governed by their explicit
    capability contracts.
  • The release includes native-first installers, a local VS Code .vsix,
    deterministic source archives, checksums, an SPDX SBOM, and GitHub provenance
    attestations once the tagged workflow completes.

Scope

The Maya scope reset remains in force. Microcontroller/freestanding firmware,
board profiles, flashing, and physical HAL modules are not part of Nyx v4 RC1.
The active scope is compiler correctness, HIR parity, self-hosting, native and
WebAssembly output, readable syntax, diagnostics, and deterministic tooling.

Install RC1

Windows PowerShell

$env:NYX_RELEASE_TAG = 'v4.0.0-rc.1'; irm https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0-rc.1/install.ps1 | iex

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/v4.0.0-rc.1/install.sh | NYX_RELEASE_TAG=v4.0.0-rc.1 bash

For a reviewed installation path, download the matching release archive, inspect
the installer, verify SHA256SUMS, then run it locally.

Validation

  • The unified local test framework passed completely.
  • 138/138 regression battery, 530-case fuzz corpus, 194-case Python/Nyx HIR
    byte parity, default arguments, destructuring, and native self-host
    reproducibility all passed.
  • The tagged GitHub Actions workflow validates the full release candidate and
    produces the platform artifacts. Treat published checksums and attestations
    from that workflow as the release evidence.

Full Changelog: v4.0.0-dev.1...v4.0.0-rc.1

nyx v4.0.0-dev.1 (Maya)

Choose a tag to compare

@justsomeone-e justsomeone-e released this 31 Aug 09:00
2fd02c8

Nyx v4.0.0-dev.1 — Maya

Nyx v4 Maya development release.

Included

  • Maya expressive syntax
  • Expression-bodied functions
  • Value-producing if and match
  • Single-evaluation match subjects
  • C++, JavaScript, Python, Rust, and WASM backend parity
  • Self-hosted parser and type-checker parity
  • Native compiler bootstrap
  • VS Code LSP and completion support
  • 138/138 regression battery
  • Embedded/Nucleo capability contracts
  • Native-first installer fixes

Verification

  • Full unified test suite: PASS
  • Regression battery: 138/138 PASS
  • Maya cross-backend suite: PASS
  • Bootstrap parser/type-checker parity: PASS
  • Installer contract: PASS

This is not the final stable release. It is the final frozen development snapshot of Nyx v4 Maya.

nyx v3.0.0-beta.6 (Official Release)

Choose a tag to compare

@github-actions github-actions released this 29 Aug 14:59

⚡ nyx v3.0.0-beta.6

Next-Generation Multi-Target Systems & Application Programming Language.

🚀 Features in This Release

  • Phase 3 Native FFI & Systems Core:
    • Zero-cost C/C++ ABI interoperability (#native include, extern "C").
    • Memory safety (unsafe {}, raw pointers *T, addr, peek, memdump).
    • Static (.a/.lib) & shared (.dll/.so) library compilation.
    • Hardware bindings (native/gpio, native/serial, native/spi, native/i2c).
    • Platform abstraction (native/platform, native/env, native/process, native/net).
    • Native SDK & library package manager (nyx new --lib, nyx build, nyx test).
  • Multi-Backend Compilation:
    • hecpp: ISO C++20 backend frozen at Gate 8 (Production Native .exe via LLVM Clang / GCC).
    • hejs: Node.js ES2022 backend frozen at Gate 8.
    • hepy: Canonical reference evaluation engine.
    • hers: Rust 2021 active conformance backend (Gate 6).
  • Module & Dependency Resolution:
    • Pure-Python TOML parser and deterministic lockfile generation (nyx.toml, nyx.lock).
    • Full topological import graph (import "./file", import "native/gpio").
  • Developer Tooling & LSP:
    • Language Server Protocol (completion, hover, definition, diagnostics).
    • CLI suite (new, check, build, run, test, doctor, fmt, lint, debug, profile, doc).

📦 Automated Installation

Windows (PowerShell):

irm https://raw.githubusercontent.com/justsomeone-e/nyx/main/install.ps1 | iex

Linux / macOS (Bash):

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/main/install.sh | bash

Full Changelog: v3.0.0-beta.5...v3.0.0-beta.6

nyx v3.0.0-beta.4 (Official Release)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Aug 10:45

⚡ nyx v3.0.0-beta.4

Next-Generation Multi-Target Systems & Application Programming Language.

🚀 Features in This Release

  • Phase 3 Native FFI & Systems Core:
    • Zero-cost C/C++ ABI interoperability (#native include, extern "C").
    • Memory safety (unsafe {}, raw pointers *T, addr, peek, memdump).
    • Static (.a/.lib) & shared (.dll/.so) library compilation.
    • Hardware bindings (native/gpio, native/serial, native/spi, native/i2c).
    • Platform abstraction (native/platform, native/env, native/process, native/net).
    • Native SDK & library package manager (nyx new --lib, nyx build, nyx test).
  • Multi-Backend Compilation:
    • hecpp: ISO C++20 backend frozen at Gate 8 (Production Native .exe via LLVM Clang / GCC).
    • hejs: Node.js ES2022 backend frozen at Gate 8.
    • hepy: Canonical reference evaluation engine.
    • hers: Rust 2021 active conformance backend (Gate 6).
  • Module & Dependency Resolution:
    • Pure-Python TOML parser and deterministic lockfile generation (nyx.toml, nyx.lock).
    • Full topological import graph (import "./file", import "native/gpio").
  • Developer Tooling & LSP:
    • Language Server Protocol (completion, hover, definition, diagnostics).
    • CLI suite (new, check, build, run, test, doctor, fmt, lint, debug, profile, doc).

📦 Automated Installation

Windows (PowerShell):

irm https://raw.githubusercontent.com/justsomeone-e/nyx/main/install.ps1 | iex

Linux / macOS (Bash):

curl -fsSL https://raw.githubusercontent.com/justsomeone-e/nyx/main/install.sh | bash

Full Changelog: v3.0.0-beta.1...v3.0.0-beta.4