Deser: A Rust Serialization Library That Never Overflows the Stack
Deser: Rethinking Rust Serialization

Armin Ronacher's Deser is a new Rust serialization library that inverts Serde's architecture: instead of types driving deserialization through recursive visitors, the format pushes events into heap-allocated sinks. This eliminates stack overflows, enables suspendable parsing, and provides lossless buffering with composable adapters. Deser supports JSON, YAML, TOML, CBOR, XML, and more, but accepts tradeoffs like larger binaries and mixed runtime performance. It's not a drop-in replacement, but it's a compelling experiment.
In Serde, a type drives the deserialization process... Deser on the other hand turns this around and the format tells the type of the next value and pushes events into a sink.
- satvikpendem
How does this compare to facet [0][1] by fasterthanlime? Seems some of the reasoning is similar especially for compile time bloat.
[0] https://facet.rs
[1] https://fasterthanli.me/articles/introducing-facet-reflectio...
- ramon156
next time just write the post yourself. I don't need an entire paragraph to explain that deser = serde but reshuffled
- duhhhhh1212
https://www.pangram.com/history/5f1c86e9-2b47-4d36-9e64-2191...