Skip to content

Introduction ​

Kirn is a general-purpose programming language created by RK Riad Khan. Its design aims to keep readable source, explicit structure, and a compiled toolchain close together.

The language is open source and actively evolving. The most useful way to understand it is to run the examples in the official repository, then use these docs as a map.

What Kirn gives you ​

  • Familiar, expression-oriented syntax for small programs and larger systems.
  • Strong types, structs, enums, traits, generics, and optionals.
  • Functions, closures, modules, pattern matching, and error propagation.
  • Concurrency primitives including spawn, channels, select, and join.
  • A CLI for running, testing, building, packaging, and documenting projects.

Kirn is not finished. Claims about performance, ownership, networking, IDE support, or future tooling should be treated as roadmap material unless they are backed by the source and a runnable example.

Choose your path ​

Source of truth ​

The normative grammar lives in grammar/kirn.ebnf. The canonical keyword set is maintained by the lexer. Examples in examples/ are the working corpus used to validate language behavior.