> Using a templated alias to provide a cleaner public interface to a > private implementation that has a more complex interface). Yep, I also used this feature to restrict instantiations for a template function to a known finite set: private void foo(alias func)() { ... func(); ... } public alias foo!f bar; public alias foo!g bla;