O(x)Caml in Space

· coding systems · Source ↗

TLDR

  • Parsimoni’s pure-OCaml CCSDS protocol stack, Borealis, booted on DPhi Space’s ClusterGate-2 in April 2026 with post-quantum OTAR and end-to-end encryption.

Key Takeaways

  • Borealis runs on an Arm Cortex-A53 SoC (4 GB RAM) as a FROM-scratch Docker image (5-10 MB), treating DPhi’s filesystem API as a delay-tolerant DTN network via BPv7 bundles.
  • BPSec wraps every bundle: one extension block encrypts payload, one authenticates it; sequence numbers block replays, keeping the satellite operator blind to content.
  • Post-quantum ML-DSA-65 signing keys rotate via OTAR without reflashing; this is claimed as the first public in-orbit demo of post-quantum OTAR, mandated by NASA-STD-1006A for long missions.
  • OxCaml’s exclave_ stack_ annotations drop p99.9 dispatch latency from 29 ns to 9 ns and eliminate GC pressure entirely (394 minor GCs to zero over 25 million packets).
  • The master key has no rotation path once in orbit; if lost, the stack is unreachable – the acknowledged failure mode for hardware lacking a TPM or secure element.

Hacker News Comment Review

  • Commenters debated whether CCSDS’s complexity forces too much from-scratch work; the author concedes TLS would be preferable but argues no good open-source full CCSDS/SDLS stack exists, making transition hard.
  • The GC-with-opt-out pattern drew broad interest: parallels were drawn to .NET Span/Memory and Java HFT heap pre-allocation, with the key insight that OxCaml’s type system enforces stack-boundedness at compile time rather than relying on discipline.
  • KC Sivaramakrishnan (kcsrk, referenced in the article) noted that LLM agents produce surprisingly correct OxCaml code despite sparse training data, suggesting OxCaml’s strong types act as testable oracles for AI-generated code.

Notable Comments

  • @rho_soul_kg_m3: Claims OCaml was first flown in LEO in 2016 on GHGSat-D with symmetric-key encryption of payload data; a reply confirms GHGSat’s constellation is now 16 satellites, still mostly OCaml.
  • @noelwelsh: Frames OxCaml as a direct alternative to Rust and Zig: “safety and ergonomics together,” pointing to a personal introduction post.

Original | Discuss on HN