Adding a runtime- vs. compile-time type twist