json-ast: Universal JSON AST datastructure

[ library, mit, unclassified ] [ Propose Tags ]

This library provides only a data-type representing the JSON value tree. It is intended to be used as a shared data-type by all kinds of JSON libraries. Same as we have the "xml-types" package for libraries dealing with XML.

Now, since the "aeson" Value has been serving this purpose for years, we've intentionally made this type representationally identical to it, making it possible to convert between them at 0 runtime cost. This means that we can use those types interchangeably, making it possible to gradually migrate.

Why displace the "aeson" Value?

  1. To boost the competition between JSON libraries. Instead of nudging the community to implement its ideas by patching "aeson". After all, competition is the driving force of evolution and hence progress.

  2. Due to so much patching already happening to "aeson", its loss of focus, some questionable design and strive for backwards compatibility, it's becoming bloated. IOW, it's trying to be "everything JSON" but with no careful design or plan and it's tied by its past. With these restrictions it's impossible for "aeson" to ever become a polished library.

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.3.1, 0.3.2
Dependencies base (>=4.6 && <5), scientific (>=0.3 && <0.4), text (>=1 && <3), unordered-containers (>=0.2 && <0.3), vector (>=0.10 && <0.14) [details]
License MIT
Copyright (c) 2016, Nikita Volkov
Author Nikita Volkov <nikita.y.volkov@mail.ru>
Maintainer Nikita Volkov <nikita.y.volkov@mail.ru>
Home page https://github.com/nikita-volkov/json-ast
Bug tracker https://github.com/nikita-volkov/json-ast/issues
Source repo head: git clone git://github.com/nikita-volkov/json-ast.git
Uploaded by NikitaVolkov at 2022-10-11T11:57:32Z
Distributions Arch:0.3.2, NixOS:0.3.2
Downloads 3587 total (13 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2022-10-11 [all 1 reports]