Fwd: [ANN] Fuel release version 1.6

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

Fwd: [ANN] Fuel release version 1.6

Mariano Martinez Peck

---------- Forwarded message ----------
From: Martin Dias <[hidden email]>
Date: Fri, Aug 19, 2011 at 6:14 AM
Subject: [ANN] Fuel release version 1.6
To: [hidden email], [hidden email]
Cc: Mariano Martinez Peck <[hidden email]>


I want to announce the new release version number 1.6 of Fuel, a binary serialization framework for Pharo that provides extremely fast deserialization. More information on our home page. Again, I thank ESUG for sponsoring me through the SummerTalk program.

You can download this version in Pharo 1.2.1 with:

Gofer new
        squeaksource: 'Fuel';
        package: 'ConfigurationOfFuel';
((Smalltalk at: #ConfigurationOfFuel) project version: '1.6') load.

This version does not add any new concrete functionality but has two main achievements: a performance improvement and a design clean up.

Many changes included in this release are part of a design clean up. They are a necessary step forward to new functionalities that are coming soon. They make code more understandable. They enable simpler extension. Happily they also helped to improve serialization performance by reducing unnecessary interactions. And it is specially important a bottleneck in graph analysis stage we have successfully attacked, obtaining great results.

- Removed explicit references to cluster classes scattered around the system. For example, in previous versions Float>>fuelCluster has an explicit reference to FLFloatCluster. This version replaces this by a double dispatch interaction.
- Clusters: Better reification. Removed annoying IDs. Removed Singleton instance creation mechanism, now mappers manage uniqueness in a better way. 
- Mappers: They were simplified. New mapping machanism inspired on Chain of Responsibility pattern. The global objects detection has been optimized considerably.
- Analyzer: Part of its behavior and state has been moved to a new abstraction called 'clusterization'. 

Best regards,
Martín Dias