Repository navigation
Installing Tycho
StefanVonRanda edited this page Aug 4, 2026
·
3 revisions
A C compiler (cc) and make — that's the whole toolchain. The transpiler is
a single dependency-free C file.
git clone https://github.com/StefanVonRanda/tycho
cd tycho
make # builds ./tychoc
./tychoc examples/hello.ty && ./examples/hello
what is your name: Ada
hello Ada
That's it. The tutorial picks up from here: Tutorial — from hello-world to a real program in about an hour.
Everything below is optional; Tycho builds and runs without any of it:
-
pkg-configplus a system library for the FFI-backed corelib modules (likecore:http). Those modules skip cleanly when the library is absent. -
A Go toolchain for the cross-language benchmarks under
bench/(also skipped cleanly when absent).
- Builds and self-hosts on any unix-like OS — developed and gated on Debian (x86-64), and benchmarked on macOS (Apple Silicon).
- No native Windows, but WSL is fine.
- On macOS:
xcode-select --installfirst. Apple's AddressSanitizer ships no LeakSanitizer, so that half of the sanitizer build is skipped there (the rest still runs).
make ci runs the whole gate locally — the test suite, the sanitizer builds,
the corelib, the concurrency/FFI/fuzz lanes, the performance guard and the spec
check. It takes about twenty minutes and needs no cloud service. A quick smoke
is make ci N=0, which skips the slow fuzz lanes.
The reader docs here are mirrored from /docs in the repo — the canonical source. · tycho-lang.com · MIT licensed
- Tutorial
- The Tycho thesis: value semantics makes implicit arenas work
- Architecture & project status
- From
mallocto implicit arenas
- Tycho language reference
- Basics
- Types
- Functions and closures
- Structs and tuples
- Enums, options, and
match - Arrays and slices
- Subscripts (user-defined projections)
- Maps
- Generics
- Concurrency
- FFI (calling C)
- Packages
- Builtins
- Memory model in the self-hosted compiler
- Tycho aggregates: arrays & structs under value semantics
- Maps with arbitrary value types
m[k]as a place: in-place map-value mutation- Generics (monomorphized)
- Concurrency in Tycho
- FFI — calling C from Tycho
- Packages & modules
- corelib — Tycho's standard library
- Performance: the self-hosted transpiler vs the C one
- Debugging generated C