Chiba Logo CHIBA v0.6.13
CHIBA blog RSS feed
CHIBA / ABOUT

About CHIBA (尺八) LANGUAGE

CHIBA (尺八) is a metal-level functional programming language: small primitives, explicit memory, direct machine control, and no heavy runtime standing between the code and the system.

Why Another Language?

Because I am tired of where modern language communities keep drifting.

A lot of functional programming has become beautiful front-end theory glued onto someone else's runtime: LLVM, JVM, BEAM, JavaScript engines. The ideas are still powerful, but the engineering path is too often fragile, academic, and distant from the machine.

Zig is still one of my favorite languages, and Andrew Kelley remains one of the developers I respect most. But the ecosystem keeps testing everyone's patience: async added then removed, the IO library rewritten again and again, modules redesigned, and even `anytype` becoming `AnyVal`. Every change may have a reason; the accumulated instability still hurts.

Rust solved real problems, but it keeps growing heavier. The language gets more complex, the standard library moves slowly, and the gap between elegant theory and day-to-day systems work keeps widening.

The Motivation

CHIBA exists to ask a simple question: can functional programming be as transparent as C, as practical as Zig, and less burdened than Rust?

I want algebraic data types, pattern matching, continuations, and strong static reasoning without accepting a huge runtime, hidden allocation, or outsourced control over ABI and stack layout.

Zen

  • Small primitives, deep composition.
  • No hidden control flow.
  • Minimal system dependencies.
  • Memory choices should not break the programmer's thought.
  • The compiler should know the machine.
  • Run first, prove later, then make it fast.

What Breaks The Zen

  • Implicit control paths like broad `try/catch/finally` machinery or interruptible async that can resume anywhere.
  • System dependencies that silently pull in glibc, libssl, zlib, or other heavy default assumptions.
  • Memory rituals that derail thought: `Box::new`, `Rc::new`, `Arc::new`, `Cow::new`, and friends everywhere.
  • Compilers pretending every target is the lowest common denominator instead of understanding the real machine.

The name comes from chi-ba (尺八 chinese reading), the shakuhachi: one bamboo tube, five holes, no mechanism to hide behind but with an extremely wide vocal range and complex playing techniques. That is the taste I want in a language too.