Programming with Futures, Lattices and Quiescence
Offered By: Scala Days Conferences via YouTube
Course Description
Overview
Explore the advanced concepts of concurrent programming in Scala through this 53-minute conference talk from Scala Days Berlin 2016. Delve into the world of futures, lattices, and quiescence as presented by Philipp Haller. Learn about the limitations of traditional futures and discover how extending them with lattices and quiescence can overcome these restrictions. Understand the benefits of this approach, including the ability to update preliminary results and resolve cyclic dependencies. Examine real-world applications of these concepts in the OPAL static analysis framework. Gain insights into performance improvements and code complexity reduction in large-scale static analysis tasks such as purity analysis and bug finding. Follow the progression from basic concurrent programming models to advanced techniques, including reactive programming, data flow, and lattice-based futures. Conclude with a look at experimental results and future directions in this cutting-edge area of Scala development.
Syllabus
Introduction
Programming Models
Other Projects
Why Concurrent Programming
Nondeterminism
Concurrent Set
Deterministic Concurrent
Restrictions
Approach
Reactive Programming
Example
Handler Pools
Data Flow
Data Flow Cycles
Resolution Policies
Lattice Purity
Lattice Purity Analysis
Opal Framework
Results
Future work
Conclusion
Phases
Quiet
Taught by
Scala Days Conferences
Related Courses
Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld SystemsVanderbilt University via Coursera Paradigms of Computer Programming
Université catholique de Louvain via edX Introduction to Operating Systems
Georgia Institute of Technology via Udacity Programming Mobile Services for Android Handheld Systems: Content
Vanderbilt University via Coursera Advanced Software Construction in Java
Massachusetts Institute of Technology via edX