Research & Engineering

Ferrous Bridge

A typed, multi-agent pipeline that turns C libraries into safe, idiomatic Rust — with verifiable safety guarantees at every step.

Proven on libyaml. Repeating on libexpat. Open-sourced as safe-libyaml.

Research Papers


Cover image for The C Language as a Translation Source: Semantics, Undefined Behavior, and the libyaml Idiom Set
Part I

The C Language as a Translation Source: Semantics, Undefined Behavior, and the libyaml Idiom Set

The Ferrous Bridge programme translates security-critical C libraries into safe, idiomatic Rust. The first concrete target is libyaml (~9,300 lines of C across ten source files). To translate C faithfully one must read C...

29 pages · cs.PL
Cover image for Idiomatic Safe Rust as a Translation Target: Ownership, Lifetimes, and ABI-Compatible Parser Design
Part II

Idiomatic Safe Rust as a Translation Target: Ownership, Lifetimes, and ABI-Compatible Parser Design

The migration of legacy C libraries to Rust is bottlenecked less by syntax than by the inverse problem of recovering the implicit invariants that C never forced its programmers to state. This paper is a design specificat...

37 pages · cs.PL
Cover image for Automated C → Rust Transpiling: From c2rust's Raw Lift to Safe, Idiomatic Rust via the Safety Ladder
Part III

Automated C → Rust Transpiling: From c2rust's Raw Lift to Safe, Idiomatic Rust via the Safety Ladder

Automated C→Rust transpilation, as exemplified by c2rust (DARPA TRACTOR-funded), is a solved compilation problem but an unsolved safety problem. The output is pervasively unsafe: raw *mut T pointers, manual bounds arithm...

35 pages · cs.PL
Cover image for Ferrous Bridge: A C → Rust Automated Agent Orchestration Pipeline with Type Checks and Safety Guarantees
Synthesis

Ferrous Bridge: A C → Rust Automated Agent Orchestration Pipeline with Type Checks and Safety Guarantees

The Ferrous Bridge programme frames C→Rust translation as a multi-agent orchestration pipeline: a typed directed acyclic workflow whose nodes are AI-driven agents and whose edges carry typed artifacts. We give a formal a...

37 pages · cs.PL