On this page

Standard Library

Zena includes an expanding standard library. The goal is for the standard library to be fairly extensive, so that there are standard ways of performing common tasks without requiring third-party dependencies, and to give the Zena ecosystem common patterns, utilities, and data types to build upon.

WARNING

The standard library is in active development and is currently being reorganized. Module structure, naming, and APIs are experimental and subject to change.

See these GitHub issues for major upcoming changes:

Modules

Module Description
zena:array 2 declarations
zena:array-iterator 1 declaration
zena:assert 18 declarations
zena:async zena:async — futures, the executor, cancellation scopes, and the task/claim layers over them (docs/design/async.md, docs/design/cancellation.md).
zena:bench zena:bench — a Tachometer-style benchmark runner (CLI-only).
zena:box 1 declaration
zena:byte-array 2 declarations
zena:byte-buffer ByteBuffer - A growable buffer for efficiently constructing binary data.
zena:cli CLI Standard Library - Command-Line Interface Utilities
zena:collections 17 declarations
zena:component-abi 29 declarations
zena:console 6 declarations
zena:core zena:core — the standard library's foundation: the types the language itself is defined in terms of, and the utilities they are built from.
zena:error 5 declarations
zena:error-stack 3 declarations
zena:fixed-array 2 declarations
zena:fs Filesystem Standard Library - WASI Preview 1 Implementation
zena:growable-array 2 declarations
zena:growable-array-iterator 1 declaration
zena:hashable 3 declarations
zena:immutable-array 1 declaration
zena:iterable-utils 3 declarations
zena:iterator 2 declarations
zena:json 10 declarations
zena:map 6 declarations
zena:math 57 declarations
zena:memory 5 declarations
zena:option Option type for representing optional values without null.
zena:ordered-map 1 declaration
zena:ownership Ownership and resource management — the layer 0 drop protocol.
zena:process zena:process — spawning host processes from Zena programs.
zena:range Range types for Zena. Represents different types of ranges for array slicing and iteration.
zena:regex 7 declarations
zena:result 4 declarations
zena:set 2 declarations
zena:simd 242 declarations
zena:stream 11 declarations
zena:string 4 declarations
zena:string-builder 2 declarations
zena:string-convert String conversion functions for primitive types
zena:string-reader 1 declaration
zena:task zena:task — operations as values (docs/design/cancellation.md; PLAN.md, async roadmap).
zena:template-strings-array 3 declarations
zena:test 9 declarations
zena:time 6 declarations
zena:url 8 declarations