coil-stdlib
Userland standard library for Coil.
Compiler virtual modules cover systems primitives (io, string, thread, …);
this package layers .hy helpers on top.
Managed with spool, same organization as the language and package manager.
Docs: docs/ — consume, module catalog, IO adapters, JSON.
HTTP lives in coil-http (separate package).
CSPRNG is crypto::random_u64 / random_bytes on coil-crypto.
JSON lives in coil-json (separate package).
See docs/codec.md.
Import explicitly — use path::* is banned (E0124). Prelude is auto-injected.
API style: prefer method-based APIs (m.insert(k, v)), not free functions.
Virtual-module host primitives (io::read) stay as free fns.
Layout#
coil.toml
src/ascii.hy # use ascii::…
src/collections/ # map, set, list, deque, bitset, tree, vec
src/path.hy # use path::{Path, …}
tests/ # coil test
docs/ # package documentation
spool links .spool/deps/stdlib at this package’s src/ directory.
Develop#
Needs a Coil toolchain on PATH (or COIL) and a
coil-time checkout at .ci/coil-time.
random::Rng::from_time uses coil-time clocks through HostInvoke (Coil module
root only — no libtime dload):
coil test --allow-read --allow-write --allow-net --root .ci/coil-time/src