A language based on a hybrid of Java and C++ that compiles to LLVM, with a borrow-checker based memory management strategy based on Rust.
HEALTH ? 80 / Healthy
// readme
Cajeta
Cajeta is a hybrid systems and application language. It pairs C++-style true templates (monomorphized, not erased), multiple inheritance, and operator overloading with Java-style class semantics and annotations, and Rust-inspired single-owner memory management β expressed through one explicit allocation idiom that lets the caller choose stack or heap at initialization and an # operator that transfers ownership. Developers coming from C++, Java, C#, Kotlin, TypeScript, or Rust find the grammar familiar on day one.
Its defining attributes:
- One ownership model, no reference counting. A single-owner heap with static move checking, scope-based drops, and path-level borrow tracking β a memory model that stays out of your way.
- True zero-copy
views and wire formats. Read structured bytes in place, no deserialization pass. - Templates with C++ semantics. Monomorphized specialization, wildcards, and operator overloading β not type erasure.
- A fast, allocation-light runtime. A lightning-fast networking stack and predictable, GC-free performance.
- Agent-native from the ground up (see below).
The compiler is LLVM-backed (LLVM 23) and produces eitherβ¦