Okay, here’s my tune: Concurrency means that related processes make mutual progress (which differs ever so slightly from Viktor’s definition), whereas Parallelism means that processes make progress at the same time (be they related or not). This means that the two are completely orthogonal and all four combinations exist and are meaningful.

From this follows that Parallelism is related to how processes are executed while Concurrency is an inherent property of how processes are related to each other; if two processes are concurrent by nature, proper synchronization will have to be employed to ensure correctness for all possible modes of execution. Properly written actors are not concurrent by this definition.

The only relation between Concurrency and Parallelism which I see is that processes can be related such that a minimum level of parallelism is required for correctness (or else deadlock). Which brings me to the conclusion that Parallelism is not necessarily instantaneous, it is about overlapping time intervals and can also be achieved by time-slicing (which is the still the dominant implementation on today’s hardware—we typically use many more threads than we have execution units).