Scala-Parallel-Programming

This repo contains my weekly notes for coursera Parallel Programming in Scala course offered by Viktor Kuncak and Aleksandar Prokopec.

Some useful code snippets of the course released by Aleksandar Prokopec is available here.

Jupyter-notebook with scala 2.10 kernel is used to generate the notebooks!

NOTE:

Please see the notebooks in Nbviewer for better display in the following links:

More to learn (Aleksandar Prokopec's suggests):

  1. Classic: Purely functional data structures by Okasaki

  2. Overview of computer architectures and their effect on performance: What Every Programmer Should Know About Memory

  3. General purpose computing on GPUs (not covered in course): CUDA by example

  4. Structured Parallel Programming: Patterns for Efficient Computation

  5. The instructor's book: Learning Concurrent Programming in Scala by Aleksandar Prokopec

  6. More theoretical approach to concurrent programming: Art of Multiprocessor Programming

  7. Fundamentals of distributed computing: Distributed Algorithms by Nancy Lynch and Introduction to Reliable Distributed Computing