Re:Why are we templating YAML?
by bamboozled on Thursday February 07, 2019 @07:02PM
(#19109947)
The killer feature for me over JSON is comment support, it's definitely useful to add todo comments etc.
[ Parent
| on HN ]
Yep, so true. Any decent config file that will be seen/edited by a human needs comment support. And any file that will not be seen by a human could be json (or whatever).
Re:Why are we templating YAML?
by krferriter on Thursday February 07, 2019 @07:55PM
(#19110286)
Yeah this is a huge selling point of YAML. JSON should have comments added to the spec. The other benefit to YAML is human readability, which is usually better in YAML compared to JSON. A specific glaring example of this is when there are long string-literal snippets inside the document, in YAML this is massively more readable than in JSON.
Re:Why are we templating YAML?
by hannasanarion on Thursday February 07, 2019 @09:22PM
(#19110905)
JSON shouldn't have comments added to the spec, because people shouldn't be trying to read or write JSON. It's an application interchange language, meant to be written and read by machines. YAML is a markup language, meant to be written and read by people. Ever notice how most YAML libraries don't even have a "dump" function?
>It's an application interchange language, meant to be written and read by machines.
Not entirely true, JSON is based on Javascript objects, it was meant to be written and read by humans just like Javascript, INI or any other basic serialized data format, or text-based programming language. If JSON were truly never meant to never be viewed or edited by human beings, it would have been published as bytecode.
Re:Why are we templating YAML?
by heavenlyblue on Thursday February 07, 2019 @11:12PM
(#19111452)
>> Ever notice how most YAML libraries don't even have a "dump" function?
No. I guess unless you’re using something half-baked, I suppose. Machines need to be able to edit configs either way.
Re:Why are we templating YAML?
by marcosdumay on Friday February 08, 2019 @10:15AM
(#19114923)
Hum... We have a bad historic of success in deciding that this or that stuff is for machine consumption only.
> JSON should have comments added to the spec.
See also ~5 years ago: https://news.ycombinator.com/item?id=7325735
Re:Why are we templating YAML?
by basil-rash on Thursday February 07, 2019 @09:36PM
(#19110993)
You can just use JSON with comments though. If you have sufficient control over the technology in question to be able to completely change it to a YAML parser, surely you can change it to be a JSON+Comment parser too. See: VS Code's config files.
But you can restrict yourself to JSON+Comments and call it YAML; it isn't idiomatic YAML, but it's still valid YAML.
> You can just use JSON with comments though.
Then it's not valid JSON, and if you try to treat it as such bad things will happen.
Re:Why are we templating YAML?
by basil-rash on Friday February 08, 2019 @04:42PM
(#19118959)
My point is that if you're in sufficient control of the stack to be able to convert the whole thing over to YAML, you could just as easily convert the whole thing over to JSON+Comments. And of course bad things would happen if you treat JSON+Comments as JSON, but similar bad things would happen if you treat YAML as JSON, so I don't see your point. It's not like people are trying to send their tsconfig's on the wire as "application/json" and expecting arbitrary parsers to support it.
When you think about it, JSON lacks so much (check JSON5 for what it's lacking), it's hard to believe even a comment is not allowed when pretty much anything else allows, which is a showstopper by itself.