ESUG SummerTalk - Fuel, binary object serializer

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

ESUG SummerTalk - Fuel, binary object serializer

tinchodias
Hi folks. I am really happy to announce that ESUG is sponsoring me for Fuel development through the ESUG SummerTalk. I am Martin Dias, a student at Buenos Aires, Argentina. The idea behind this SummerTalk is to implement Fuel, a binary, fast and general-purpose object graph serializer in Pharo. It is based on VisualWorks' Parcels ideas.

Actually, the project has already started since several months. Tristan Bourgois and I started with the project while doing an internship with RMoD, INRIA. Since a couple of months, Mariano Martinez Peck joined the team, and now he is the official mentor in the SummerTalk.

ESUG website for SummertTalk: http://www.esug.org/wiki/pier/Promotion/SummerTalk/SummerTalk2011

The website with all the necessary information is here: http://rmod.lille.inria.fr/web/pier/software/Fuel
It even includes slides explaining the algorithm. In addition, a paper is in progress.

For the moment, Fuel already provides the following features:

- Fast pickle format. It is much faster to materialize than to serialize.
- Correctly support class reshape (when the class of serialized objects has changed).
- Serialize ANY kind of object. For the moment there is no object to our knowledge that we cannot serialize and materialize.
- Be able to completely serialize classes and traits (not just a global name).
- Support cycles and avoid duplicates in the graph.
- Integration to Moose with an extension to export and import their models.
- Detection of globals: for example if you serialize Transcript, it is not duplicated and instead managed as a global reference.
- Solve common problems like Set rehash.
- Buffered writing: we use a buffered write stream for the serialization part (thanks Sven!).
- No need of special support from the VM.
- Try to have a good object oriented design.
- Well tested (about 120 tests, for the moment).
- Large set of benchmarks (even benchmarks for Moose extension).

And of course, there are a lot features for the future. You can see some of them in the website and some in the issue tracker: http://code.google.com/p/fuel/issues/list

We really appreciate all kind of feedback and comments. If you want to try it, check in the website how to do it. It is extremely easy.

Once again, I want to thank a lot to ESUG for sponsoring the project. I plan to create a "news" section in the website with some RSS. I will keep you informed.

Best regards,
Martin


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: [Seaside] ESUG SummerTalk - Fuel, binary object serializer

Tudor Girba-2
Congratulations, Martin!

This is great news. I am looking forward to using it even tighter in Moose :)

Cheers,
Doru


On 24 May 2011, at 22:39, Martin Dias wrote:

> Hi folks. I am really happy to announce that ESUG is sponsoring me for Fuel development through the ESUG SummerTalk. I am Martin Dias, a student at Buenos Aires, Argentina. The idea behind this SummerTalk is to implement Fuel, a binary, fast and general-purpose object graph serializer in Pharo. It is based on VisualWorks' Parcels ideas.
>
> Actually, the project has already started since several months. Tristan Bourgois and I started with the project while doing an internship with RMoD, INRIA. Since a couple of months, Mariano Martinez Peck joined the team, and now he is the official mentor in the SummerTalk.
>
> ESUG website for SummertTalk: http://www.esug.org/wiki/pier/Promotion/SummerTalk/SummerTalk2011
>
> The website with all the necessary information is here: http://rmod.lille.inria.fr/web/pier/software/Fuel
> It even includes slides explaining the algorithm. In addition, a paper is in progress.
>
> For the moment, Fuel already provides the following features:
>
> - Fast pickle format. It is much faster to materialize than to serialize.
> - Correctly support class reshape (when the class of serialized objects has changed).
> - Serialize ANY kind of object. For the moment there is no object to our knowledge that we cannot serialize and materialize.
> - Be able to completely serialize classes and traits (not just a global name).
> - Support cycles and avoid duplicates in the graph.
> - Integration to Moose with an extension to export and import their models.
> - Detection of globals: for example if you serialize Transcript, it is not duplicated and instead managed as a global reference.
> - Solve common problems like Set rehash.
> - Buffered writing: we use a buffered write stream for the serialization part (thanks Sven!).
> - No need of special support from the VM.
> - Try to have a good object oriented design.
> - Well tested (about 120 tests, for the moment).
> - Large set of benchmarks (even benchmarks for Moose extension).
>
> And of course, there are a lot features for the future. You can see some of them in the website and some in the issue tracker: http://code.google.com/p/fuel/issues/list
>
> We really appreciate all kind of feedback and comments. If you want to try it, check in the website how to do it. It is extremely easy.
>
> Once again, I want to thank a lot to ESUG for sponsoring the project. I plan to create a "news" section in the website with some RSS. I will keep you informed.
>
> Best regards,
> Martin
>
> _______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

--
www.tudorgirba.com

"Being happy is a matter of choice."




_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev