Hacker News new | comments | ask | show | jobs | submit login

I am surprised that EDN is not making more progress as a data interchange format, especially now that it has fantastic validators and coercion libraries, such as Prismatic's Schema:


This is, by far, the most intelligent data exchange system I have ever seen. It offers a richer language of types than what is offered by JSON, it is as readable as YAML, it is far more concise than XML. And yet it seems unable to break out of the world of Clojure. But it deserves to be taken seriously as a data interchange language.

EDN [1] has one flaw. It is not JSON. I will just repost the response [2] I received when I mentioned wanting EDN support in PostgreSQL.

> So the same argument as (say) YAML, Lua tables or TNetStrings. Or, if you include binary representations, stuff like Thrift, XDR and ASN.1. You can embed a JVM in PostgreSQL and write the functions yourself (or use PL/Scheme I suppose), but I would be basically amazed if anyone decides to do it for you. JSON gets the nod because it's understood by billions of systems. Other formats are going to struggle.

While I do not agree with his position, it is shared by many people.

[1] https://github.com/edn-format/edn

[2] https://news.ycombinator.com/item?id=5548404

Yes, JSON is "understood" in the sense that it is easy to parse, yes. That doesn't mean actually working with the results is any easier. (1) Without a schema, doing so can actually be harder. (2) JSON leaves out many useful data types and it is not extensible. So, perhaps JSON has "succeeded" by lowering expectations of data interchange. :)

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