# Landed on a stable ABI

> Generics + async: Landed on a stable ABI.

Source: https://kern-lang.eu/releases/generics-and-async-on-a-stable-abi

Generics + async

## Release notes

### Generics (v0.7)

Selective monomorphization for stdlib hot paths: `List<T>`, `Map<K,V>`, `Result<T>`, `Option<T>`, `Decimal`: emitted as `linkonce_odr` typed wrappers so multiple compilation units share them without link conflicts; `@monomorphize` opt-in for user code; type-erased fallback.

### Async (v0.8)

Real `spawn`/`await` codegen, cooperative kern routines (16 KB guard-paged stack, configurable via `KERN_ROUTINE_STACK_SIZE`), routine-aware libuv IO (file/DNS/TCP), routine-aware libpq + mbedTLS, `spawn_thread` for CPU-bound work via the libuv worker pool. Two `spawn`ed `sleep_ms(80)` tasks complete in ≈82 ms. ABI-breaking decisions are now behind us, not ahead.
