Symbology
Janus Symbology
Section titled “Janus Symbology”This is the reference card for every contributor.
| Glyph | Name | Semantic Role | Usage Context |
|---|---|---|---|
| ☍ | The Janus | Identity / Dualism | The Core, The README, The Philosophy. Represents the tension (Safe vs. Unsafe, Script vs. System). |
| 🜏 | The Antimony | Constitution / Law | Invariants that cannot change. The “Purified” Core. Used in SPEC-*.md for hard rules. |
| ⟁ | The Delta | Transformation | Where the Compiler intervenes (Ghost Memory, Desugaring, Lowering). |
| ⊢ | The Turnstile | Judgment / Truth | Semantic rules. Affine type enforcement. “The compiler proves this.” |
| ∅ | The Void | Forbidden | Anti-features. GC, inheritance, hidden control flow. “This path is closed.” |
| ⚠ | The Hazard | Raw / Unsafe | Pointer arithmetic, unchecked casts, :core profile code. |
| ⧉ | The Box | Boundary | Capabilities (ctx.net), FFI boundaries, Module interfaces. |
The Safety Dial
Section titled “The Safety Dial”The “Safety Dial” is not a knob; it is a selection of Symbolic Modes.
Mode A: ⚠ Raw (The Core)
Section titled “Mode A: ⚠ Raw (The Core)”- Profile:
:core - Glyph:
⚠ - Semantics: No guards. You are the hardware.
- Memory: Manual Pointer Arithmetic.
// ⚠ SAFETY: User guarantees bounds.func poke(addr: usize, val: u8) do ... endMode B: ⊢ Strict (The System)
Section titled “Mode B: ⊢ Strict (The System)”- Profile:
:core - Glyph:
⊢ - Semantics: Affine Types / Unique. The compiler judges ownership.
- Memory: Linear types (
~T). Move-by-default.
// ⊢ INVARIANT: 'buf' is consumed.func send(buf: ~Buffer) do ... endMode C: ⟁ Fluid (The Edge)
Section titled “Mode C: ⟁ Fluid (The Edge)”- Profile:
:edge/:script - Glyph:
⟁ - Semantics: Ghost Memory / ARC. The compiler transforms intent into safety.
- Memory: Implicit ownership. Elided ref-counts.
// ⟁ TRANSFORM: Compiler inserts 'retain/release'.func process(data: Buffer) do ... end