← Back to Home

Cambrian Language

In Development

DSL for Distributed Systems

A programming language designed specifically for stateful, message-based distributed systems. Features member-centric state management and temporal operators for elegant handling of complex state transitions.

Note: Cambrian Language is currently in the design phase. No production implementation is available yet. Check out Cambrian Container for the runtime environment.

Core Concepts

Member-Centric State Management

Each member owns its transformation logic. Natural modeling that mirrors how we think about object state changes with clear ownership and reduced coupling.

Temporal Operators

Clear distinction between before/after states with operators like @before.x and @after.x. Enables complex atomic state transitions.

Route-Based Messaging

Declarative message routing with incoming and outgoing routes. Conditional logic with 'where' and 'from' clauses for flexible message orchestration.

Pure Functions

Functional programming style with pure functions for testability, reusability, and automatic memoization.

Weakly Typed Addresses

Addresses can be untyped when needed but become type-safe once typed. Flexible yet secure entity addressing.

Design Goals

  • Natural modeling of distributed system state
  • Easy debugging — trace which member changed and why
  • Parallel processing potential for independent transformations
  • Clear separation between routing and transformation logic
  • Familiar paradigm for functional programming developers