Я действительно не думал, что Haskell работает в таких вещах, как передача сообщений, но эти результаты (я смотрю на Linux которые в 4-5 раз лучше, чем что-либо еще) заставили меня подвергнуть сомнению это. Некоторый сокрушительный поворот привел меня к Cloud Haskell, который на самом деле просто представляет собой набор полезных хорошо написанных библиотек, связанных с распределенными системами (серьезное признание к хорошо типизированному и Tweag I/O для их работы над этим и статическим указателями).
Мой опыт работы с Актерами и передача сообщений происходит от моего использования Akka. Я пытаюсь понять, что Cloud Haskell может сделать, чтобы определить, хочу ли я использовать его для потенциального проекта, где важны масштабируемость, эффективность и надежность. Итак:
- Поддерживает ли он Актеров? Если нет, какова эквивалентная абстракция? Как он обрабатывает сообщения, передаваемые/потерянные сообщения?
- Как он масштабируется по сравнению с Akka? Примерно насколько лучше/хуже в использовании памяти и латентности?
- Как он масштабируется для нескольких узлов (как в том, насколько просто масштабироваться для нескольких узлов)?
- Как это терпимо к отказам?
Я понимаю, что этот вопрос немного широк, но я считаю, что если у кого-то есть некоторый опыт работы с Cloud Haskell, они, вероятно, сможем справиться со всеми этими ответами очень легко - и вопрос будет более полезен для тех поиск общей информации о Cloud Haskell против Akka в будущем.