edn-format / edn

Extensible Data Notation
2.6k stars 96 forks source link

Make the spec concrete already #77

Open benjamin-rood opened 6 years ago

benjamin-rood commented 6 years ago

Quote:

Currently this specification is casual, as we gather feedback from implementors. A more rigorous e.g. BNF will follow.

Perhaps it's time to just write the BNF? Please?

It makes it much harder to advocate for the use of EDN without this sort of thing, especially if we're not a Clojure shop.

bfontaine commented 4 years ago

Ping on that.

I’m contributing to the most complete EDN parser in Python that I know of (edn_format) but the spec is too vague and clojure.edn/read-string accepts a lot more than what’s defined here. It’s really hard to properly implement a parser with no formal spec.

We can’t seriously use EDN outside of the Clojure world without a proper grammar.

avodonosov commented 4 years ago

This issue is a duplicate of the #56

benjamin-rood commented 4 years ago

@avodonosov Not really. This is about giving them a kick up the arse.

Marti2203 commented 4 years ago

Hi. I am currently making an ANTLR grammar for this. Maybe it will be as good as having a BNF

Marti2203 commented 4 years ago

https://github.com/antlr/grammars-v4/pull/1831 Pull request to the main ANTLR repo for grammars.