Church Machine

λ Church Machine

Ti60 F225
LED0
Boot
LED1
Run
LED2
Fault
LED3
Done
← DWRITE CR3[0]
CR0-CR15 -- 128-bit Context Registers (4 x 32-bit words)
CR Detail
DR0-DR15 -- 32-bit Values (DR0 = zero)
Gate Log — mLoad / mSave from last Step
Machine Architecture
Memory — Foundation Layer Status
Editor
0
1
2
3
4
5
pre-boot 0b000000
Ready. Write Church assembly and click Assemble.
Namespace Table -- Golden Token Entries
Hello Mum — Keystone Connect Flow QR image →
printf("Hello, World\n"); proves a Turing machine can write to stdout
Keystone.Hello() proves the CM can reach a named person, across any distance, through a capability stack
Why this matters

printf writes bytes to a file descriptor — it has no knowledge of who is on the other end. Keystone.Hello() travels through a capability stack: every hop is authenticated by a Golden Token, so the CM can prove it reached a specific named person and not merely an open socket. That guarantee — identity plus authority, enforced in hardware — is what separates capability-based computing from conventional I/O.

STEP 1 — ACTIVE
Scan QR & Connect
Scan Mum's QR code (or paste her identity string) to call Keystone.Connect() and fill c-list slot 1 with her E-GT.
STEP 2 — PENDING
Say Hello
Call Keystone.Hello() through the live Tunnel once Mum is connected in Step 1.
Mum's QR Code (served from this IDE — scan or paste)
Mum QR Code
Scan or Paste Identity String
Keystone NS[32] — C-list Slot 1 (Mum E-GT)
NULL GT — Connect() not yet called
Step 2: Say Hello (connect in Step 1 first)
Connect to Mum in Step 1 to enable the live Tunnel bridge.
Mum's canonical identity string (copy for paste above):
Loading…
⚠ Developer Tool
Rotates Mum's Ed25519 key pair and refreshes this page.
Memory — Word-Addressed Dump
Abstraction Catalog
Select an abstraction
Click any abstraction on the left to see its methods, permissions, and how it fits into the CR6/CR14 canonical form.
LUMP Repository
Select a lump
Pick a lump above to see its methods, pet names, MTBF, deployment info, and capabilities.
Execution Trace 0 rows
# PC Op Cond Dst Src Description DR0DR1DR2DR3 DR4DR5DR6DR7 DR8DR9DR10DR11 DR12DR13DR14DR15 NZCV STO
Get Started with the Church Machine
Three steps to run your first capability-secured program on real hardware.
1
Flash Your Ti60
Download the pre-built bitstream and program it onto your Ti60 F225 FPGA board. The board will boot the Church Machine kernel automatically.
Waiting
2
Connect & Verify
Plug in your Ti60 over USB and verify it calls home. The board will appear in your Devices list once registered.
Waiting
3
Write & Run a Program
Open Programs, write a CLOOMC assembly program, assemble it and run it in the simulator. Every instruction is capability-checked by the hardware.
Waiting

In 1843, Ada Lovelace wrote the first computer program — Note G, an algorithm for computing Bernoulli numbers. It was not just code. It was the first first-class program: it passed functions as arguments to other functions, not just values.

This is the vital distinction. Basic machine code (Turing) moves numbers between registers — ADD R0, R1, R2 adds two values, nothing more. CLOOMC is different. In CLOOMC, a variable can hold a function, pass it to another function, and return a function as a result. let double = \x -> x * 2 creates a function. let apply = \f x -> f(x) passes that function as an argument. Ada did this in 1843 — Alonzo Church formalised it in 1936 as the lambda calculus.

Type let x = 2 + 3 and you are writing what Ada wrote. To see her original algorithm as Church Machine code, click Create and select the Bernoulli example.

λ>
History
Abstractions & Methods
Select a concept or instruction
Click any item on the left to see details.
The Church Machine
Figures
Select a document or figure
Click any document on the left to view it, or click a figure to see the diagram.
♻ Garbage Collection
PP250 four-phase deterministic GC — click once per phase to step through
NS entries
Freed slots
Freed words
Live entries
1
Mark Set G=garbage on every valid NS entry — pessimistic assumption
2
Scan Walk all CR roots + call stack; mark reachable entries live
3
Sweep Find entries still flagged garbage; build reclamation list
4
Clear Zero NS entries + object words; bump version; flip GC polarity
Open Source Community
CLOOMC is free, open source, and community-driven. Law 6: Open Source.
Loading repositories...
Recent Activity
Loading commits...
Contributors
Loading contributors...
Quick Links
Push to GitHub
Export the current simulator source to the connected repository. Every file is updated in a single commit.
Browse Library
Fetch shared abstractions from the Mum Tunnel Library. Search by language or author, then install into your namespace.
Publish Abstraction
Share your compiled abstraction with the community. It will appear in the Mum Tunnel Library for others to import.
📤 GitHub sync: ⏳ loading…
📡 live · polling every 3 s
Time Machine Running FW ACK# Fault Type
Waiting for boards to call home…
Hardware
No devices registered. Connect a board via WebSerial to see it here.
GT Inspector — Golden Tokens by Type
Every GT currently found in loaded c-lists and live CRs, grouped by type. Click any row to see where it appears.

Site Map

All 53 HTML pages in the Church Machine project.

Simulators
Home — Landing Page CM Simulator — Church-Turing Meta-Machine Church Machine IDE — This page
Documents & Patents
The Six Laws of CLOOMC — Foundational security principles CM Patent Portfolio — Patent application index CM Unified Patent Submission — Full patent document Church Machine — Business Plan — Full business plan document Church Machine — Investor Deck — 15-slide presentation
Technical Figures (45)
Figure A1: Abstract GT Address Space Figure 21: Ada Lovelace Programming Model — Bernoulli Sum-of-Squares Figure 10: Atomic Abstraction Architecture — 7 Zeroes Figure 3: B-bit Capability Propagation Control Figure 11: Boot Sequence State Machine — 5-Phase Hardware Initialization Figure 16: Church Numeral Method Dispatch Figure 8: Pure Church Processor Block Diagram Figure 26: Compiler-Security Separation Figure 10: Conventional vs CM Architecture — Attack Surface Elimination Figure 17: DATA Objects — Church/Turing Bridge Figure 9: Three Dispatch Styles — Same CALL, Three Resolutions Figure 1: Dual-Gate Trusted Security Base Architecture Figure 15: Five-Phase Boot Sequence Figure 2: GT Format and Type Field Figure 14: Hello Mum — Encrypted Capability Tunnel Figure A2: Home Base Tunnel Figure 20: HP-35 and SlideRule Opcode Distribution Figure 6: Lambda Calculus to CM Hardware Mapping Figure 7: LAMBDA Clamp — Macro-Like Code Reuse Figure 1: LAMBDA CR6 Idempotent Self-Invocation Flow Figure 3: LAMBDA Machine-Status Fast Path Figure 5: Non-Nestable LAMBDA with CALL-Mediated Nesting Figure 4: LAMBDA vs. CALL Execution Paths Figure A4: Local Peripheral Autonomy Figure 5: Machine-Status Fast Path Figure 13: Mint Abstraction Nesting & Domain Purity Figure 12: mLoad Validation Pipeline — Five Sequential Checks Figure A3: MTBF Qualification Tiers Figure 24: Multi-Language Compilation to Universal Target Namespace Architecture Figure 13: Network Transparency via F-bit and Tunnel Keys Figure 3: Why No Counter — Software Drives, Hardware Follows ChurchNSGate — Unified NS Integrity Architecture Figure 7: PP250 Deterministic Garbage Collection Figure 11: Safe Turing Abstractions Figure 28: Scale-Free Security Model Figure 25: Single-Lump CALL Split Figure 4: Self-Describing Stack Frames Figure 6: Self-Describing Stack Frames Figure 14: Three Dispatch Styles Figure 2: Three Loop Styles — LAMBDA CR6 Dominates Figure 8: Encrypted Capability Tunnel Between Meta Machines Figure 12: Unified Address Space Figure 27: Upload-Driven Lifecycle Figure 9: Vulnerability Elimination by Construction