This blog post shows how to use D's compile-time features to put together to implement the Builder pattern with minimal run-time overhead.