Elixir / OTP, как платформа для решения одновременных проблем, представляется наиболее подходящим решением.
При написании приложения с веб-интерфейсом рассмотрите случай, в котором я хочу рассуждать, и отделите логику приложения, используя другой функциональный язык - а именно haskell (благодаря таким преимуществам, как расширенное обнаружение ошибок во время компиляции, статическая типизация и т. д.). Затем я обработал бы параллелизм, используя GenServer
s, и подключил бы веб-интерфейс, используя Phoenix.Channel
s.
Возможна ли эта настройка даже при использовании NIF
с? Кроме того, будет ли поддерживаться истинный параллелизм? Я не уверен, что я придерживаюсь правильной линии рассуждений здесь, но сможет ли новый процесс haskell быть порожденным в соответствии с GenServer
требованиями, и смогут ли они эффективно общаться?