e.g., interface A { static T A(T)() { ... } } can be used as A!T instead of A.A!T. Same for classes and structs. If you want a use case I'm not going to stop you from coming up with one... so feel free.