Echo is a compiled language.
Statement leaders mark control and binding. The rest of each line is an ordinary expression. xo checks a program and emits a native binary from the same LLVM pipeline.
Echo 2026 is the public edition. A Rust toolchain ships as prerelease tags on GitHub. The repository is MIT licensed.
/ std/io
$ xs = [1, 2, 3]
~ sum = 0
* x : xs {
~ sum = sum + x
}
io.print("sum={sum}")Start
Build xo and write a first program.
- Install Install the current xo prerelease, or build from a checkout.
- First program Minimal runnable shape and the xo check, run, and build commands.
- Project setup Create an entry file and a local workflow.
Language
Statement forms for the Echo 2026 edition.
- Leaders Statement leader forms. A glyph marks the role of each statement.
- Binds and functions Immutable, mutable, and const binds. Functions are values.
- Values and operators Literal forms, operator precedence, equality, and copy.
- Collections and ranges Lists, products, indexing, and inclusive ranges.
- Control If, loops, match, break, and continue.
- Result and option Produce and match result and option shapes.
- Strings Pure and rich string forms.
- Modules and std Imports, exports, and the std/ import policy.
- Structs % shape, @ members, and the method receiver.
- Tasks Spawn work, capture values, and join task handles.
Packages
Userland modules imported as std/ paths.
- Standard library Userland modules for I/O, strings, files, process, JSON, encoding, crypto, collections, and networking.
- API reference Index of public exports across shipped std modules.
Spec
Public language law and the machine-checked suite.
- Echo 2026 Edition home for the current public language.
- Language Spec Spec table of contents mapped to the Reference and the suite.