Agda doesn't need that restriction, as far as I know. And neither does Dhall. See https://dhall-lang.org/ Neither language is Turing complete. - Source: Hacker News / 3 months ago
Kubernetes config is a decent example. I had ChatGPT generate a representative silly example -- the content doesn't matter so much as the structure: https://gist.github.com/cstrahan/528b00cd5c3a22e3d8f057bb1a75ea61 Now consider 100s (if not 1000s) of such files. I haven't given Pkl an in depth look yet, but I can say that the Industry Standard™ of "simple YAML" + string substitution (with delicate, error prone... - Source: Hacker News / 3 months ago
Fail to see how this is any different than Dhall (https://dhall-lang.org/) other than it produces plists too. - Source: Hacker News / 3 months ago
Well, Dhall provides something between JSON and a Turing complete language that can make a lot of configuration much quicker to write, if you can hack the functional syntax. http://dhall-lang.org/. - Source: Hacker News / 3 months ago
What are your thoughts on: - https://dhall-lang.org/. - Source: Hacker News / 3 months ago
Throwing in a plug for https://dhall-lang.org/ > Dhall is a programmable configuration language that you can think of as: JSON + functions + types + imports. - Source: Hacker News / 3 months ago
I agree, I think a language like dhall (https://dhall-lang.org/) strikes a good balance. - Source: Hacker News / 3 months ago
Hey now. Your average Haskeller would simply recommend you replace YAML with Dhall. https://dhall-lang.org/. - Source: Hacker News / 3 months ago
Indeed why? However the conclusion I have is not to use JSON but to use a type safe configuration language that can express my intent much better making illegal states impossible. One example of such lang is Dhall. https://dhall-lang.org/. - Source: Hacker News / 3 months ago
There are underpowered languages / tools, that can only solve a problem for which they are intended poorly. But not all limited tools are like that. Say, eBPF is prominently not Turing-complete, which allows to guarantee that a eBPF program terminates, and even how soon. Still eBPF is hugely useful in its area. Or, say, regular expressions are limited to regular languages; in particular, they famously [1] cannot... - Source: Hacker News / 3 months ago
This is how I think of Dhall as well, which I highly recommend. https://dhall-lang.org/. - Source: Hacker News / 4 months ago
I've been thinking along these lines but more 'strongly validated' than statically typed in the sense that you'd be better off being able to load the entire config and then produce a list of problems (and should be able to offer good editor support if done correctly). Though https://dhall-lang.org/ demonstrates that you can statically type quite a lot of configuration to great advantage, which appears to be... - Source: Hacker News / 7 months ago
> Where practical is in the sense of an engineer (or in their terms, a CS practitioner), Configuration processing. E.g. I'd like my yamls to be decidable, though I'd settle for guaranteed to halt[1]. [1] https://dhall-lang.org/. - Source: Hacker News / 7 months ago
I really like what dhall-lang (https://dhall-lang.org) is doing in that sense. It manages to strike a nice balance between power and simplicity from the start. - Source: Hacker News / 7 months ago
This reminds me of the Dhall configuration language: https://dhall-lang.org/. - Source: Hacker News / 7 months ago
Maybe you'd like jsonnet: https://jsonnet.org/ I find it particularly useful for configurations that often have repeated boilerplate, like ansible playbooks or deploying a bunch of "similar-but" services to kubernetes (with https://tanka.dev). Dhall is also quite interesting, with some tradeoffs: https://dhall-lang.org/ A few years ago I did a small comparison by re-implementing one of my simpler ansible... - Source: Hacker News / 8 months ago
I agree, I quite like https://dhall-lang.org/ for that reason. It strikes a good balance between features and being a config language. - Source: Hacker News / 8 months ago
This is what Dhall is designed to solve. If I was on a big team I’d be looking closely at it https://dhall-lang.org/. - Source: Hacker News / 8 months ago
I think 3 is the biggest take away for me. I spent way too much time trying to utilize Dhall to create a domain specific language for each project, and translate that to CloudFormation. Instead of thinking in Lambdas and Step Functions, you would use the language of the problem we’re trying to solve; the business of getting a Client’s(1) Accounts(2) into a bunch of PDF Financial Statements(3) that we could then... - Source: dev.to / 9 months ago
Well, it depends on the language. Some are quite good at restricting programs so that it is not possible to execute arbitrary code. Take a look at https://propellor.branchable.com to see how Haskell might be used. Idris might be a good candidate as well. https://dhall-lang.org is quite interesting for these purposes as well (although it is not general purpose). - Source: Hacker News / 9 months ago
Not for Nix, it depends entirely on functional concepts. There’s also the Dhall config language, which could do what Nix does. Not sure if that’s any better for you but maybe worth checking out. Source: 10 months ago
Do you know an article comparing Dhall Configuration Language to other products?
Suggest a link to a post with product alternatives.
This is an informative page about Dhall Configuration Language. You can review and discuss the product here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.