YoVDO

Programming with Futures, Lattices and Quiescence

Offered By: Scala Days Conferences via YouTube

Tags

Scala Days Courses Scala Courses Concurrent Programming Courses Asynchronous Programming Courses Reactive Programming Courses Static Analysis Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
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 Systems
Vanderbilt 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