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:
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.
Details: - 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'.