std.serialization

Rory McGuire rjmcguire at gmail.com
Sun Feb 16 22:14:40 PST 2014


Do you have a JSON driver for Orange yet? Would be interesting to benchmark
Orange against a purpose designed JSON serialization library.
If your design is mostly compile time the experiment would be very
interesting (I think).




On Mon, Feb 17, 2014 at 12:03 AM, Jacob Carlborg <doob at me.com> wrote:

> On 2014-02-16 21:45, "Nordlöw" wrote:
>
>> I believe it's worth the try to get Python-style serialization
>> simplicity to D by default. We use Python cpickle at work and its
>> fantastically simple and fast. It handles just about everthing you need
>> by default as long as you have imported the modules that contain the
>> types involved in the serialization.
>>
>> It would attract more people from dynamical languages like Python if D
>> got default-powers in std.serialization that does everything that
>> msgpack does plus followings references.
>>
>> This would make it possible to serialize arbitrary graph-likes
>> structures with potential reference cycles. Resolving these cycles can
>> be solved by using a map that contain a list of references/classs that
>> already have serialized.
>>
>
> I already have all this in Orange [1], which I'm in progress of adapting
> to a package for Phobos.
>
>
>  I'm however not sure how serialization of base and superclasses should
>> be implemented in the most convenient way. Maybe somehow has a good
>> suggestion for this.
>>
>
> This requires registering the subclass in some way. In my implementation
> one needs to call:
>
> Serializer.register!(Sub);
>
> For full example see [2].
>
> [1] https://github.com/jacob-carlborg/orange
> [2] https://github.com/jacob-carlborg/orange/wiki/Base-Class
>
> --
> /Jacob Carlborg
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-announce/attachments/20140217/413d3bd0/attachment-0001.html>


More information about the Digitalmars-d-announce mailing list