IronRust
IronRust is the RustScript runtime and compiler for Microsoft CLR. The repository includes the CLR runtime, bytecode-to-CLR compiler, runner CLI, tests, examples, and a minimal Edge HTTP runtime.
Projects
PdVm.Runtime- CLR-side VM value model, builtin implementations, host dispatch, and program execution helpers.
PdVm.Compiler- Reads
VMBCbytecode and emits CLR assemblies (.dll) that implementIPdVmProgram. PdVm.Runner- Small CLI for compile/run/compile-run flows.
PdEdge.Http- Minimal HTTP/1 proxy runtime for PD Edge scripts on CLR.
- Project name is
PdEdge.Http, but the built executable name ispd-edge-http-minimal-clrso the existing Rust perf harness can target it directly. PdVm.Tests- Compiler/runtime tests.
PdEdge.Http.Tests- HTTP proxy parity tests.
Requirements
- .NET 10 SDK
- Rust toolchain only if you want to run the Rust HTTP perf harness
PdEdge.Http --program-source ... compiles RustScript in-process through PdVm.Compiler. It does not launch Cargo or require the pd-edge Rust workspace at runtime.
Build
From the repo root:
dotnet build IronRust.sln
Release build for the proxy runtime:
dotnet build PdEdge.Http\PdEdge.Http.csproj -c Release
Test
Build first, then run tests without rebuilding:
dotnet test IronRust.sln --no-build
Or run just the HTTP runtime tests:
dotnet test PdEdge.Http.Tests\PdEdge.Http.Tests.csproj --no-build