dhall-lang / dhall-lang

Maintainable configuration files
https://dhall-lang.org
BSD 3-Clause "New" or "Revised" License
4.18k stars 173 forks source link

Discussion: Jsonnet, Dhall, and other insights #1311

Open ghostsquad opened 1 year ago

ghostsquad commented 1 year ago

Hi Dhall Folks!

I'd like to gain some insight into the history of Dhall and how you would compare it to other languages like Jsonnet, what's good, what's bad, what's notable differences?

Thank you for your time!

Gabriella439 commented 1 year ago

The way I like to explain the tradeoff between the languages is by the following table:

Superset of JSON Programming Language Typed
Dhall
Cue
Jsonnet

I've been working on another language to try to satisfy all three requirements, but it's intended more as a basis for creating other languages: https://www.haskellforall.com/2021/09/fall-from-grace-ready-to-fork.html

ghostsquad commented 1 year ago

@Gabriella439 oh thank you for the matrix. This definitely helps. Is there any more you can share, even anecdotal?

ghostsquad commented 1 year ago

What about lazy evaluation? That's a big feature for me in regards to Jsonnet

kukimik commented 7 months ago

If you like the matrix here, you might also be interested in https://github.com/tweag/nickel/blob/e1113af36842a1012494342a95f76a7973495961/RATIONALE.md.

I'd like to gain some insight into the history of Dhall

You may want to read the Dhall related posts here: https://www.haskellforall.com/.

And if you want to do some historical research on your own, the issue trackers of projects in https://github.com/dhall-lang/ and https://discourse.dhall-lang.org/ seem a good place to start digging.