Coursera Spring Sale
40% Off Coursera Plus Annual!
Grab it
Explore the challenges and solutions for serializing closures in Scala 3 through this 40-minute conference talk from Scala Days 2025. Learn about the limitations of existing approaches to closure serialization in parallel and distributed programming, including the pitfalls of JVM's built-in serializer that can lead to runtime errors and unexpected serialization of unintended objects like testing frameworks. Discover the Spores3 library, a complete rewrite of the long-running Spores project that provides simple and safe closure serialization with improved interfaces and rigorous compile-time checks. Understand how spores can be packed into serialized representations, unpacked to retrieve values, and even partially applied to other serialized spores for advanced use cases like type-class derivation. Examine practical examples demonstrating the shortcomings of current serialization methods and see how Spores3's compile-time verification prevents runtime errors during serialization and deserialization. Follow along as the speakers demonstrate building a distributed and durable futures library using Spores3, where execution state is persistently stored to disk and remains crash-resistant. Gain insights into the core interface and design principles of Spores3, and learn about future developments and potential use cases for this powerful serialization solution in distributed and durable systems.