Consider reimplementing `Encoding` using the "jsonifier" lib
- Dominant language
- Haskell
- Stars
- 1.3k
- Forks
- 336
- Avg merge
- 3d 7h
- Merged PRs (30d)
- 4
Description
According to [the benchmarks of "jsonifier"](https://github.com/nikita-volkov/jsonifier#benchmarks), it provides a performance boost in encoding of up to 3x over the current implementation of "aeson".
It [has been suggested](https://www.reddit.com/r/haskell/comments/jeni1l/new_json_encoder_that_is_up_to_3x_faster_than/g9hj7vk?utm_source=share&utm_medium=web2x&context=3) by @bergmark to consider updating "aeson" to reuse "jsonifier" for its encoding functionality.
"jsonifier" uses a lot of C under the hood, so this is one thing you'll have to take notice of for users coming from GHCJS. As an idea regarding that, the "jsonifier" dependency could be made optional being controlled by a Cabal flag.
In case you guys find yourselves interested, I'm open to provide the necessary support on the "jsonifier" end. E.g., by providing encoders for extra types like those from the "time" lib and things like that.
Contributor guide
Assessment
This issue has not been assessed yet.