EDN
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
Clojure EDN Preview.
At a glance
| Purpose | An EDN (Extensible Data Notation) file: Clojure-style data of maps, vectors, lists, sets, keywords and tagged literals. |
| Extensions | .edn |
| Poka parser | poka-edn |
| Viewer | poka-tree-viewer |
| Depth tier | Parser with a shared viewer (see Depth tiers) |
| Breadth tier | B2 Broad (see Breadth tiers) |
How much Poka reads
B2 Broad. The common content of the current and the common older versions is decoded. Some named features or versions are not, and are listed.
Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-26: read parsers/poka-edn/src/main.rs (913 lines, a recursive-descent parser over the whole EDN grammar) and plugin.json; the three unit tests cover error handling (a later invalid form keeps earlier forms, an invalid first form is an error, an unknown tag parses). The corpus has plumatic-schema_bb.edn but no test reads it. Covers .edn, including files with several top-level forms. Every value is shown in a tree: scalars, strings, characters, keywords and symbols, lists, vectors, maps, sets and tagged literals; #_ discards and ^ metadata are handled. Judgement: B2 rather than B1 because of the display caps.
What Poka does not read
- Caps: 20 levels deep, 500 children per collection, 3,000 nodes, strings cut at 200 characters (flagged as truncated)
- Metadata (^{...}) is read and dropped
- Tagged literals such as #inst and #uuid are shown as their raw value, not interpreted
- Clojure-only reader forms (#( ), #"regex", #') stop the parse; forms before them are kept
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- clojure-reader (candidate; Zlib; Rust; https://github.com/Grinkers/clojure-reader) — Reads and parses Clojure/EDN; no_std capable (alloc); recommended by edn-rs as its maintained successor.
- edn-rs (candidate; MIT; Rust; https://www.github.com/edn-rs/edn-rs) — Parses and emits EDN; README says development is halted (maintenance mode only).
- edn-format (candidate; MIT; Rust; https://github.com/bowbahdoe/edn-format) — Rust implementation of EDN (Extensible Data Notation); v3.3.0, updated 2023-10-03; matched on lib.rs, not tested
Sources
- parsers/poka-edn/src/main.rs
- parsers/poka-edn/plugin.json