I believe that using general purpose programming languages for Infrastructure as Code is a step in the wrong direction.
To enable more users to manage their infrastructure, there should be many compatible ways to make changes. HCL is great because it is limited and is easy for humans and computers to read and write. With that, we can build GUIs so more people can manage their infrastructure without losing all the benefits of IaC.