Elseon: Son of Elsewhere — Language Design

“We do not reinvent the wheel; we honor the wheel by giving it a new engine.”

1. The Name

Elseon reads like a Scandinavian designer’s surname — literally “son of elsewhere.” It works because it feels like a real name with mythic undertones, while quietly encoding the project’s philosophy: ideas from elsewhere brought on board. It is playful, minimalist, and carries a subtle narrative weight.

2. The Philosophy

Elseon is a language designed for environments where precision is non-negotiable and resources are finite: the Linux kernel and embedded systems.

Core Principles

  1. PFE (Proudly Found Elsewhere): we do not waste time re-implementing what C has already perfected. C headers are treated as first-class semantic modules.
  2. NIH (Not Invented Here) — the inversion: we do not believe in “Not Invented Here.” We believe in “Found Elsewhere and Made Better.” We ingest existing logic and wrap it in Elseon’s safety guarantees.
  3. Kernel-Ready:
    • No garbage collection.
    • No hidden allocations.
    • No hidden control flow.
    • Deterministic memory layout.

The Kernel Test

Every language feature is admitted only if it passes the Kernel Test:

3. The Syntax Family

Elseon is similar in form to C and JavaScript, to offer minimal cognitive friction:

The language must be as simple as possible — every feature added beyond the core has to justify itself against the Kernel Test and against the simplicity goal. The syntax exists to be boring; the semantics exist to be safe.

4. Lessons from Object-Oriented Languages (1980s onward)

Elseon does not ship classes and inheritance hierarchies. It adopts the lessons that survived, and rejects the mechanisms that failed:

Adopted

Rejected

5. PFE: C Headers as First-Class Semantic Modules

C has perfected an enormous body of interface definitions — the kernel’s own headers are the canonical example. Elseon does not re-declare them; it ingests them.

Mechanism options (see prompts/features/04-c-header-ingestion.md): libclang, clang AST dumps, or a dedicated C header parser. The kernel headers are the conformance corpus.

The survey of prior attempts at an improved C — and what Elseon borrows from each — lives in documents/08-related-work.md. Two well-known candidates are deliberately excluded as models: Rust (entirely different surface representation — pure ego, not reason) and D (garbage collection — wrong runtime for the kernel). Both remain idea sources under PFE: take the idea, leave the surface or runtime.

6. The Compiler: LLVM Backend

Code generation goes through LLVM.

7. The Programming Model

Elseon sits between imperative and intent-driven programming:

8. Naming: Semantic-Sort

Identifiers follow the semantic-sort pattern <domain>_<role>_<purpose>_<variant>, ordered from broad meaning to narrow meaning, so the namespace becomes a searchable, hierarchical index. The rules are defined in prompts/flavors/01-semantic-sort-naming.md and apply to Elseon source, the compiler’s own code, and this repository.

9. Status and Next Steps

This document is the seed of phase 2 (language specification). It will grow worked examples — a driver stub, a ring buffer, an allocator — and the conformance-test plan that maps every guarantee above to a test. The related-work survey (documents/08-related-work.md) records the prior attempts and the ideas Elseon borrows from them.

See TODO.md for open questions and the phase plan in PHASES.md.