Designing Actor SystemsExplores the design principles of actor systems in reactive programming, covering topics like web clients, timeouts, and actor interactions.
Concurrency with ExecutorsCovers the basics of concurrency properties, Executors, Runnable objects, ForkJoinPool, task completion handling, execution contexts in Scala, and simplifying task execution.
Parallel Computation: TasksExplores parallel computation using tasks for concurrent execution and demonstrates their implementation in practice.
Fold Reduce OperationsExplores fold (reduce) operations in parallel programming using Scala, covering associative operations, expression trees, parallel reduction, and array reduction.
Implementing CombinersCovers the implementation of combiners in parallel programming in Scala, including efficient combine methods and set data structures.
Parallelism and ConcurrencyCovers the course CS206 on Parallelism and Concurrency, including logistics, materials, exercise sessions, labs, exams, and grading criteria.
Concurrency with FuturesExplores futures as a structured approach to concurrency, simplifying parallel tasks and input-output operations.
Parallel Programming: FundamentalsCovers the basics of parallel programming, including exploiting parallelism in algorithms and the importance of avoiding race conditions.
Memory ModelExplores the formalization of memory models and their crucial role in program optimization.
Actor Messaging SemanticsCovers the semantics of message processing in Akka actors, emphasizing actor encapsulation and collaboration.