The above example, this code will instantiate the template only once: ttt!"hello"; ttt!"hello"; The second call just refers to the already instantiated template. Using alias allows you to refer to an instantiation without having to specify the same arguments again.