В наши дни в Erlang проявляется большой интерес как язык для написания параллельных программ на многоядерных. Я слышал, что люди утверждают, что модель передачи сообщений Erlang легче программировать, чем доминирующие модели с общей памятью, такие как потоки.
И наоборот, в высокопроизводительном вычислительном сообществе доминирующей моделью параллельного программирования является MPI, который также реализует модель передачи сообщений. Но в мире HPC эта модель передачи сообщений обычно считается очень сложной для программирования, и люди утверждают, что модели с общей памятью, такие как OpenMP или UPC, легче программировать.
Кто-нибудь знает, почему существует такая разница в восприятии передачи сообщений против разделяемой памяти в мирах ИТ и HPC? Это связано с некоторыми фундаментальными различиями в том, как передача сообщений Erlang и MPI делает передачу сообщений в стиле Erlang намного проще, чем MPI? Или есть еще одна причина?