Overview
Explore the evolution and optimization of Scala's Future in this 49-minute conference talk from Scala Days Lausanne 2019. Delve into the definition of Future and Promise, examine the past implementations, and understand the challenges with ExecutionContext and blocking operations. Learn about the wishlist for Scala 2.13, optimization techniques, and chosen limitations. Discover innovative solutions including improved transformation, linking, and batching executor implementations. Gain insights from benchmarks and understand how these improvements can make your Scala applications more efficient and performant.
Syllabus
Intro
#define Future
#define Promise
The Future of our past
Trivial example
ExecutionContext-what?
ExecutionContext.global
BlockContext-what?
When blocking is unavoidable
Wishlist for Scala 2.13
Optimization 101
Chosen limitations
Resulting recipe
Solution: Transformation
Solution: Improved Linking
Solution: Improved Batching Executor
Benchmarks run on
Taught by
Scala Days Conferences