Pulumi is Terraform for people who hate HCL shortcomings.
Not to nitpick but there is so much more that is wrong with Terraform than HCL e.g. lack of dynamic providers.
Just being able to DRY your code and write tests is already worth the cost of admission for me.
I do use CDKTF where Terraform lacks: dynamic providers and dynamic resource names. For anything else, modular Terraform code does that and does it better, and it's more readable and works with the existing Terraform ecosystem of Terraform Cloud, linters, security scanners, drift detectors, etc.