Skip to content
You are reading next, which describes the unreleased compiler. Khora is unstable before v1: syntax, standard-library APIs and behavior may change. The current release is documented under v0.4.

Coming to Khora (migration guides)

These notes map familiar concepts from other ecosystems onto Khora. They assume you have read enough of the Language Reference to recognize the syntax — Expressions, Failures and Capabilities are the three that carry most of the difference — and they spend their space on the places where a habit from your last language is the thing that will trip you.

They are not syntax cheat sheets. The goal is to explain where a familiar concept has a direct analog, where Khora deliberately chooses a different abstraction, and which habits should not be carried over unchanged.

  • From TypeScript + Effect — the closest fit in intent, and the one where the vocabulary maps almost term for term: Effect<A, E, R> is a return type, a raises row and a with row.
  • From Go — the closest fit in deployment: one native binary, no VM. The differences are that failure is in the type rather than in a second return value, and that a fiber has an owner.
  • From Rust — native and statically typed without lifetimes or a borrow checker, because Perceus reference counting answers the same question at run time.

Khora examples on these pages are compiled as part of the docs build.

Khora 0.4.0built frombd964738afb6on 2026-10-17 20:41ZVersioningSecurityContributingReleasesSource