Skip to content

Nocter v0.2.0

Choose a tag to compare

@rvo-jp rvo-jp released this 01 Aug 19:32
· 242 commits to main since this release

Nocter v0.2.0 Release Notes

Nocter v0.2.0 completes the Allocator and ownership foundation required for practical owned
String and Vec<T> programs and substantially expands the compiler-backed language server.

Highlights

  • A checked Layout, provenance-carrying RawBuffer, and explicit Allocator contract provide
    failure-atomic allocation, growth, and deallocation.
  • Recursive drop obligations cover partially initialized structs, fixed arrays, payload enums, and
    initialized vector prefixes.
  • String supports empty construction, allocation, copy/from-string, reserve, append, clear,
    views, and deterministic drop.
  • Vec<T> supports empty construction, capacity management, reserve, push, pop, clear, views, and
    deterministic recursive drop for copy and non-copy elements.
  • Runtime acceptance covers Vec<String>, Vec<File>, and Vec<Vec<String>>, including failed
    growth and close-once behavior.
  • LSP support includes diagnostics, semantic tokens, hover, definition, references, document
    symbols, semantic completion, generic signature help, incomplete-edit recovery, and consistent
    multi-file open-document overlays.

Distribution

The release asset contains one .nocter/ directory with the compiler, metadata, license files, and
standard library. The supported native host and target are arm64-darwin.

Unpack the archive, move .nocter/ to the desired installation location, and place a symlink to
.nocter/nocter on PATH. The compiler resolves the real executable path to find its standard
library, so the binary should remain inside the .nocter/ directory.

Normal Nocter builds do not require LLVM, clang, as, ld, an external runtime library, or the
Xcode Command Line Tools.

Verification

The release gate passed compiler checks, formatting, Clippy with warnings denied, 1,866 library
tests, 294 CLI build tests, 423 native run tests, 112 distributed-home tests, LSP integration tests,
and packaged-home execution. The generated release image passed nocter doctor and reported
Nocter 0.2.0.

See the v0.2.0 development contract for the complete scope and explicit
non-goals.