I completely agree with you for the advantages. Well said. However I think talking only about templates using DSLs is a bit restrictive. Although DSLs are mostly used to author infrastructure code, there are other solutions that take advantage of existing programming languages (along with their tools, IDEs, ecosystem) to write infrastructure code: Pulumi, AWS CDK and Terraform CDK for instance.