News for hackers. Stuff that matters.
Re:That's a Lot of YAML by pgt on Thursday September 28, 2023 @08:53AM (#37688962)
EDN (Extensible Data Notation) is a subset of Clojure: https://github.com/edn-format/edn

It is:

- Unambiguous

- Streamable

- Extensible

- Whitespace-insensitive, but there are formatting conventions for readability

Re:That's a Lot of YAML by ldhough on Thursday September 28, 2023 @11:22AM (#37690919)
So much better than the alternatives, really hope it starts catching on outside the Clojure ecosystem.
Re:That's a Lot of YAML by waffletower on Thursday September 28, 2023 @03:22PM (#37694408)
Indeed, it translates into and out of JSON quite well, and is much more human readable. A much much saner format than YAML. However, EDN is less hospitable to non-Lisp code blobs and heredocs, which limits its adoption IMO.
Re:That's a Lot of YAML by waffletower on Thursday September 28, 2023 @03:28PM (#37694519)
Not precisely whitespace-insensitive, as whitespace is required for element demarcation/separation. However, semantic indentation shenanigans are non-existent. Commas are considered whitespace and unnecessary -- which is beautiful.
Re:That's a Lot of YAML by tremon on Thursday September 28, 2023 @03:31PM (#37694563)
This is the first data format I've seen that makes explicit distinction between lists and sets, which is good. But I'm not sure what the semantic distinction is between lists and vectors: in my mind, arrays and linked lists are implementation details of the data structure, not the data format.
Re:That's a Lot of YAML by waffletower on Thursday September 28, 2023 @03:35PM (#37694624)
The distinction between lists and vectors manifests from the same two distinct Clojure collection types. They are syntactically distinct within the language and are present to provide homoiconicity -- code as data -- Clojure lisp expressions can be represented in EDN. Vectors, [], are typically the preferred collection literal.