|
|
|
|
|
by lliamander
1181 days ago
|
|
How does the compiler know which parts of the code can be run in parallel? My understanding is that while parallelism (actually executing instructions simultaneously) is a property of the runtime, it depends upon concurrency (the separation of computations as independent) which is always something that has to be specified in the program source code. Erlang has a similar property of "scaling with core-count for free" provided you write your program with a prodigious use of processes (which Erlang makes very easy and idiomatic). How is it that HVM is able to identify independent computations? I admit to being only passingly familiar with Haskell-style FP, so perhaps the answer to my question is obvious. |
|