handl API Reference
The reference is generated per repo (scripts/gen_reference_all.py) — each section below links into reference/<repo>/, one entry per lib-* package repo, kernel substrate crate, or handl-packages/ package.
Platform
- Host concepts — traits, types, and the plugin lifecycle for composable hosts.
- Tensor — host-side dense n-d tensor functions (f64, row-major).
Kernel substrate (kernel repo)
- Prim — the minimal atom layer for handl's arrow-based stdlib.
- Bytes — byte-buffer primitives for the
Bytesscalar type. - Cmp — deep equality / total ordering.
- Combinators — function combinator utilities.
- Error — the error-raising primitive contract.
- Mood — mood (mode-of-data) operations.
- Obj — record introspection primitives.
- Type — type coercion, predicates, and utilities.
Contracts and implementations (lib-* repos)
- Base64 — base64 encoding/decoding.
- Char — the
char/str/unicodepackage map: contracts, impls, layer membership, backend swap. - Collections — vec/list/queue/stack/deque/hash_map/hash_set/array.
- Comb — call a function with an array of arguments.
- Compress — compression contract.
- Concurrent — cooperative concurrency contract (step-arrow model).
- Crypto — SHA-256 and friends.
- Dedent — strip a shared leading-whitespace prefix.
- Encoding — generic encoding to/from string forms.
- Fetch — HTTP client contract (WinterCG
fetchsurface). - FFI — objects and arrows for foreign function calls.
- Grade — the
Gradekind for effect-graded arrows. - Hex — hexadecimal encoding/decoding.
- HTTP (RFC) — HTTP/1.1 wire codec in pure Handl.
- Intl — internationalization contract.
- IP — IP address, CIDR and socket types.
- JS — grades, types and arrows for JavaScript interop.
- KV (Hashmap) — in-memory key/value store.
- Math — numeric surface.
- Noise — deterministic lattice-noise contract.
- Option — Option type and constructors.
- OS — libc-backed OS primitives.
- OTLP — OpenTelemetry protocol support.
- Parse — generic string parsing.
- Query — user-space query algebra. Also: Command, Event.
- Rand — randomness generation contract.
- Result — Result type and constructors.
- Serialize — generic serialization to/from strings.
- Serve — HTTP server around a fetch-shaped handler.
- Stats — canonical statistical aggregates.
- Str — the string contract.
- Tag — tagged values (host capability).
- Tar — pack
{path, contents}objects into a base64 tar archive. - Tensor (spec) — transparent
.hnlspec of thetensor.*surface. - Test — assertion, benchmark, fuzz, property, snapshot helpers.
- Time — wall-clock and monotonic clocks.
- TLS — nonblocking TLS contract.
- Transform — sequence transforms.
- Type (indexed families) — dependent structure (ADR-0120).
- Types — transparent aliases for the C type vocabulary.
- Unicode — unicode contract.
- URL (RFC 3986) — strict URI parsing.
- Utils — boolean utilities.
- UUID — unique identifier generation.
- WebSocket — WebSocket client contract (RFC 6455).