Intercalate enhances the maintainability of a system. Changes to domain objects or templates are automatically propagated to all the relevant representations.
Intercalate enhances object reuse. If a new domain object is added, it immediately becomes functional in all the contexts where the objects are used. Similarly, by simply writing a template for a new context, all objects in the domain can immediately be used in that context.