# Yona > Documentation for the Yona programming language: a statically typed, LLVM-compiled functional language with transparent concurrency, algebraic effects, and linear resources. Yona compiles to native executables via yonac. Errors carry stable codes (yonac --explain E0xxx). Function arrows carry effect rows. Docs cover the language specification, guides, CLI reference, and standard library. ## Documentation sets - [Abridged documentation](https://yona-lang.org/llms-small.txt): Learn, Guides, Reference, and Agents (no stdlib API pages) - [Complete documentation](https://yona-lang.org/llms-full.txt): every page including the standard library reference ## Pages - [Yona](https://yona-lang.org/): A statically typed functional language for the age of autonomous software — effects answered by your handlers, resources scoped by construction, native speed via LLVM. - [Agent guide](https://yona-lang.org/agents/): How AI coding agents should consume these docs and work with the Yona toolchain. - [Accelerators (GPU)](https://yona-lang.org/guides/accelerators/): Columnar GPU execution with Std\GPU — explicit kernels, transparent lowering of array pipelines, CPU fallback semantics, and typed GPU failures. - [Concurrency in depth](https://yona-lang.org/guides/concurrency/): The complete Yona concurrency model — transparent async, task groups, channels, and parallel comprehensions. - [Iterators and streams](https://yona-lang.org/guides/iterators/): Streaming data processing in Yona with the prelude Iterator type and the lazy Std\Stream module — constant-memory pipelines in a strict language. - [Memory and linearity](https://yona-lang.org/guides/memory/): Reference counting, ownership transfer, in-place optimization, and compile-time linear resource tracking. - [Modules and interfaces](https://yona-lang.org/guides/modules-interfaces/): How Yona modules compile to native object files with C-ABI exports, what .yonai interface files carry, and how cross-module generics, search paths, and the C FFI work. - [Performance](https://yona-lang.org/guides/performance/): How Yona's compilation pipeline shapes performance, honest benchmark numbers against C, and practical guidance for writing fast Yona. - [Persistent data structures](https://yona-lang.org/guides/persistent-data-structures/): How Yona's immutable sequences, dicts, and sets work — structural sharing, complexities, and performance guidance. - [Traits](https://yona-lang.org/guides/traits/): Yona's type classes — declarations, instances, superclasses, static dispatch, auto-derive, and cross-module use. - [The type system](https://yona-lang.org/guides/type-system/): A complete map of Yona's static type system — inference, ADTs, traits, rows, effects, linearity, and refinements. - [Installation](https://yona-lang.org/install/): Install the Yona compiler and REPL from packages, or build from source. - [Collections](https://yona-lang.org/learn/collections/): Persistent sequences, dictionaries, and sets — structural sharing, operators, generators, and the core stdlib functions. - [Concurrency](https://yona-lang.org/learn/concurrency/): Transparent async — parallel let bindings, auto-await, sequential do blocks, scoped resources, and parallel comprehensions, with no async/await keywords. - [Effects](https://yona-lang.org/learn/effects/): Algebraic effects — perform operations, handle them at the call site, and check unhandled latent effects at apply (E0202). - [Functions](https://yona-lang.org/learn/functions/): Defining and applying functions in Yona — clauses, guards, lambdas, currying, closures, and pipes. - [Modules](https://yona-lang.org/learn/modules/): Declaring modules, exporting functions and types, importing as an expression, and fully qualified calls. - [Pattern matching](https://yona-lang.org/learn/pattern-matching/): case expressions and every pattern form — structural decomposition with first-match semantics and exhaustiveness warnings. - [Quick start](https://yona-lang.org/learn/quick-start/): Your first Yona programs — expressions, files, executables, and the REPL. - [Style](https://yona-lang.org/learn/style/): Idiomatic Yona — flat lets, do for effects, with for resources, parallel comprehensions, folds, iterators, and naming conventions. - [Syntax and evaluation](https://yona-lang.org/learn/syntax/): Yona's lexical rules, literals, and evaluation model — everything is an expression, evaluated strictly. - [Types and data](https://yona-lang.org/learn/types/): Hindley–Milner inference, algebraic data types, records, first-class constructors, traits, and auto-derive. - [Compiler CLI](https://yona-lang.org/reference/cli/): Complete reference for the yonac compiler and the yona REPL, including all flags and environment variables. - [Error codes](https://yona-lang.org/reference/error-codes/): Catalog of Yona compiler error codes with examples, fixes, and warning flags. - [Prelude](https://yona-lang.org/reference/prelude/): Types and functions available in every Yona program without an import. - [Language specification](https://yona-lang.org/reference/specification/): >- - [Why Yona 2.0](https://yona-lang.org/why-yona-2/): >- ## Standard library - [Standard library](https://yona-lang.org/stdlib/): 372 public functions across 36 modules. - [Std\Bool](https://yona-lang.org/stdlib/bool/): Boolean combinators and conditional helpers. - [Std\ByteArray](https://yona-lang.org/stdlib/bytearray/): Contiguous unboxed byte array. Provides allocation, indexing, slicing, bulk operations (foldl, map), and conversion between byte arrays, strings, and sequences. - [Std\Channel](https://yona-lang.org/stdlib/channel/): Std\Channel — bounded MPMC channels with type-safe sender/receiver split. - [Std\Collection](https://yona-lang.org/stdlib/collection/): Higher-order collection operations — functional helpers for sequences, sets, dicts. - [Std\Crypto](https://yona-lang.org/stdlib/crypto/): Crypto -- cryptographic hashing and random byte generation. - [Std\Dict](https://yona-lang.org/stdlib/dict/): Dict — persistent dictionary backed by a Hash Array Mapped Trie (HAMT). - [Std\Encoding](https://yona-lang.org/stdlib/encoding/): Encoding -- string encoding and decoding utilities. - [Std\File](https://yona-lang.org/stdlib/file/): File -- filesystem operations with async I/O support. - [Std\FloatArray](https://yona-lang.org/stdlib/floatarray/): Contiguous unboxed array of Float (64-bit double) values. No per-element reference counting. O(1) random access, cache-friendly iteration. - [Std\Format](https://yona-lang.org/stdlib/format/): Format -- string formatting with positional placeholders. - [Std\Function](https://yona-lang.org/stdlib/function/): Function combinators — identity, composition, application, flipping. - [Std\GPU](https://yona-lang.org/stdlib/gpu/): Std\GPU — accelerated columnar execution. - [Std\Http](https://yona-lang.org/stdlib/http/): HTTP client and server — built on Std\Net and Std\String. - [Std\IntArray](https://yona-lang.org/stdlib/intarray/): Contiguous unboxed array of Int values. No per-element reference counting — the array itself is a single RC-managed allocation. O(1) random access, cache-friend - [Std\IO](https://yona-lang.org/stdlib/io/): Std\IO — non-blocking console and handle-based byte I/O. - [Std\Json](https://yona-lang.org/stdlib/json/): Json -- JSON serialization helpers. - [Std\List](https://yona-lang.org/stdlib/list/): Sequence (list) operations — map, filter, fold, sort, and more. - [Std\Log](https://yona-lang.org/stdlib/log/): Log -- leveled logging to stderr. - [Std\Math](https://yona-lang.org/stdlib/math/): Math — polymorphic numeric operations and float math. - [Std\Net](https://yona-lang.org/stdlib/net/): Net -- TCP and UDP networking with async I/O. - [Std\Option](https://yona-lang.org/stdlib/option/): Optional values — represents a value that may or may not exist. - [Std\Pair](https://yona-lang.org/stdlib/pair/): ADT-based pairs with named fields — an alternative to tuples. - [Std\Parallel](https://yona-lang.org/stdlib/parallel/): Parallel map — applies f to each element concurrently. All invocations of f run in parallel. If any fails, the rest are cancelled and the error is propagated. - [Std\Path](https://yona-lang.org/stdlib/path/): Path -- file path manipulation. - [Std\Process](https://yona-lang.org/stdlib/process/): Process -- process management, environment, and command execution. - [Std\Random](https://yona-lang.org/stdlib/random/): Random -- pseudo-random number generation. - [Std\Range](https://yona-lang.org/stdlib/range/): Integer ranges with optional step — lazy representation, materialized on demand. - [Std\Regex](https://yona-lang.org/stdlib/regex/): Regex — PCRE2-backed regular expressions. - [Std\Result](https://yona-lang.org/stdlib/result/): Error handling — represents either success (Ok value) or failure (Err error). - [Std\Set](https://yona-lang.org/stdlib/set/): Set — persistent set backed by a Hash Array Mapped Trie (HAMT). - [Std\String](https://yona-lang.org/stdlib/string/): String -- string manipulation and conversion. - [Std\Task](https://yona-lang.org/stdlib/task/): Task spawning for concurrent execution. - [Std\Test](https://yona-lang.org/stdlib/test/): Simple test assertions — returns (:pass, name) or (:fail, message). - [Std\Time](https://yona-lang.org/stdlib/time/): Time -- timestamps, sleeping, and elapsed time measurement. - [Std\Tuple](https://yona-lang.org/stdlib/tuple/): Operations on 2-tuples (pairs). - [Std\Types](https://yona-lang.org/stdlib/types/): Types -- runtime type conversions.