Types over Strings: Extensible Architectures in Rust

I show how to implement event listeners and dependency injection using Rust’s type system to avoid common errors in stringly-typed versions of these extensible architectures. Read more


Auto-Currying Rust Functions

This post contains a gentle introduction to procedural macros in Rust and a guide to writing a procedural macro to curry Rust functions. The source code for the entire library can be found here. It is also available on crates.io. (more…)

Read more »

Type-Level Programming in Rust

I show how two domain-specific type systems, information flow control and two-party communication protocols, can be implemented in Rust using type-level programming. I explain how interesting properties of these domains can be verified at compile-time. Fi... (more…)

Read more »