On 10/30/20 1:56 PM, Steven Schveighoffer wrote:
I was looking to report an enhancement request to vibe.data.json (filed
here: https://github.com/vibe-d/vibe.d/issues/2490), and I started
looking at the serialization code for vibe. It's really really
complicated, and I'm just wondering if this is a case of
overengineering, or if there's a logic behind making this so
complicated. My iopipejson serializer is super simple comparatively.
Is there a benefit to having all the complexity? I know they support
both json and bson, but I cannot follow the code very well, and I'm not
sure what happens where, and which types are responsible for what.
-Steve
So I've been meaning to ask this as I have been learning Rust off-and-on
recently for web development, and was impressed by the traits
functionality. In particular, with traits and some agreed upon API, many
packages are interchangeable in terms of various functionalities,
including JSON serialization/deserialization.
What would be the nearest analog facility in D -- supposing we could
agree on a standard API -- to facilitate pluggable serializers?
I am a big fan of asdf (and Steve, haven't tried iopipejson yet, but
will do). It would be nice to not rewrite code to try a different
serializer, and Rust is really neat in this regard.