Expand description
Runtime for Go packages compiled to Rust by the rustygo compiler.
Generated code is safe Rust and calls into this crate for everything Go
has and Rust does not. The unsafe in the project lives here, the same way
Rust’s own std confines it.
This crate is at the M0 spike stage (see docs/ROADMAP.md). What exists:
ops: Go integer semantics that differ from Rust’s (shifts, division).print: the builtinprint/println.panic: Go panics carried on Rust unwinding.rt: the process entry point for a Gomain(stdonly).
Still to come, by milestone: the collector, Gc<T> / Ptr<T>, strings,
slices, maps and interfaces (M1); goroutines, channels and timers (M2);
the syscall layer and netpoller (M3).
§Features
std(default): hosted targets. Without it the crate isno_std+alloc.gc-torture: debug collector that collects at every safe point.