I would like to mention first that parallel! = Parallel. They are closely related by concepts, but parallel computing differs from parallel computing in that parallel control flows occur simultaneously, while parallel flows can alternate, but can be parallel. Fine hair to crack, but one that is important to understand.
... provide tools and language level constructs for parallel task implementation (for example, does Erlang have a concept of the process as a language construct?).
The Erlang process is a small, insulated green thread. The language does not contain shared memory constructs; data is transferred between parallel control flows through “messages”. The notification is called "simultaneous." Erlang is explicitly designed as a parallel language, and, be that as it may, they plan some control flows - which map 1: 1 to processes - in parallel. Erlang does not give you explicit control over scheduling, which is in contrast to the streaming model.
It’s hard to know what you are looking for - your question is quite wide - but any of the languages you mentioned (except maybe PHP?) Will allow you to use several processors that, of course, are sitting on your computer. Choose a few to focus, expect to spend several years of training and go for it.
source share