Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

skycfg is doing this: https://skycfg.fun

I'm not convinced - the ergonomics aren't great, it does not support CRDs, is mostly untyped, and you end up unnecessarily encapsulating everything with dozens of function parameters since you cannot easily merge nested data.

Starlark is great for configuring an imperative tool like Bazel which is only declarative at the top level, but is impractical for pure configuration data. Having the full power of a general purpose language isn't great for configuration - it quickly leads to lots of complexity at the wrong layer.

Cue has a radically different approach[1] that works very well in practice. The author of Cue, mplv, wrote the first version of bcl/gcl and Cue is the spiritual successor of sorts :-)

It's still early, but many people (including me) already use it in production. Their Slack is very friendly and helpful!

[1]: https://cuelang.org/docs/usecases/configuration/



Cue gets a lot of things right (strong builtin validation, strong typing), I haven't explored it much, but I feel that a language that bans inheritance mixin-inheritence, and uses essentially typed structs that can have computed properties, and late-binding, gets most of what you want. Something like this could be put onto starlark/skycfg fairly easily, I think.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: