From: Julien Blanc (julien.blanc_at_[hidden])
Date: 2019-11-25 05:19:32


Le dimanche 24 novembre 2019 à 07:39 -0800, Vinnie Falco a écrit :

> * QtJsonValue is part of a huge application framework. This alone is
> enough to make it unsuitable as a vocabulary type: No one is writing
> libraries that depend on Qt (imagine a Boost library being proposed
> that required Qt).

While the last part of the sentence is true in the sense that it is
really unlikely to happen (and thus we need a boost::jsonvalue), the
first is obviously completely wrong. See
https://github.com/fargies/qjsonrpc as a counter example.

> Counterexample:
>
> <
> https://github.com/ripple/rippled/blob/232975bfdbde12a65499130d78f938f261c989ba/src/ripple/rpc/handlers/AccountInfo.cpp#L101
> >

Seems i did not express myself correctly. What i wanted to say is that
i don't want to use a json type in the core part (the “business logic”)
of a program. Obviously i'll use one in any serialization adapter / rpc
part (which is the case in your example) if needed.

Although i still hope that a solution giving the same level of
abstraction than .net core, where you expose standard types, and the
framework takes care of all the serialization / deserialization part,
is doable in pure c++ (made some experiments there back in time, was
fun but very hard to maintain and very limited in functionalities).

Regards,

Julien