logoalt Hacker News

majormajor • yesterday at 9:45 PM • 1 reply • view on HN

> I think the point of a lot of configuration formats is that they don't want their configuration to also be a full-fledged programming language.

That seems to be everyone's initial goal, but then it inevitably gets leaky.

I think the dominant split here that forces everything into a weird mismash is that nobody really wants to have to understand arbitrary programming language configs for third-party stuff, they want to read config and know what's going on. BUT for their own stuff, they find reasons to want more power and expressibility...


Replies

cassianoleal • yesterday at 11:32 PM

> That seems to be everyone's initial goal, but then it inevitably gets leaky.

This is very much true. And until they do get leaky, you have to wrap them in all sorts of weird templates or other forms of abstraction.

This is one of the reasons I used to really like Chef's config language. It was a Ruby DSL, which meant that anything the DSL couldn't do natively, you could just use Ruby right there.

Of course, this is easily misused, but if you were careful it was as powerful as it was elegant.