It appears that making a distinction between concurrency and parallelism is something that is becoming a topic of discussion in itself. The second post in this series is not an original content. It is actually a year old post that I just stumbled upon that talks of the fundamental differences in the kind of problems that concurrency and parallelism could solve. Here is the link without much further ado: Parallelism and concurrency need different tools.

Some of the key aspects are:

  1. API differences
  2. Differences in tool sets needed to help in troubleshooting and solving for bugs
  3. Inherent properties of determinism