This repository is the canonical source distribution for Vibra's standard
library. Vibra projects consume an exact Git revision as an ordinary source
dependency and vendor it under dep/std.
(project
(package "my-app" "0.1.0")
(dependency std git: "https://github.com/nahharris/vibra-stdlib.git" rev: "<full-commit-id>"))
The Vibra compiler repository pins this repository as its stdlib/ submodule.
Compiler and runtime releases bundle the same pinned source snapshot; executable
.vapp packages statically link the used implementation and retain the source
snapshot for verification and tooling.
Using a compatible vibra executable:
vibra check .
vibra fmt
vibra lint --deny-warningsThe end-to-end stdlib behavior suite currently runs from the compiler
repository with cargo run -- test. Changes to this repository must update the
matching tests/stdlib-*.vibra coverage there.
All .vibra modules and project.vibra use Vibra's S-expression syntax.
manifest.yaml is not part of the distribution; project metadata lives in
project.vibra.
src/collections.vibra provides the canonical v1 array and string-key map
operations. Updates return copied values, lookup misses are optional, invalid
bounds and allocation limits are typed errors, and map order is deterministic.
src/text.vibra treats $str as valid UTF-8 and uses Unicode-scalar offsets,
matching $for; byte lengths are named explicitly. Growing transformations
return typed allocation-limit errors. src/bytes.vibra provides safe lookup,
construction, concatenation, search, and non-lossy UTF-8 decoding.
src/convert.vibra provides strict typed primitive parsing and deterministic,
locale-free formatting. src/display.vibra defines separate display/debug
contracts without adding implicit interpolation.
Licensed under either Apache-2.0 or MIT, at your option.