Compile time programming use cases