Короткая статья о функциональном ЯП Erlang с "акцентом на привлекательность языка для решения реальных задач с точки зрения практика".
"Мощность связки "Процессы+сообщения" не меньше, чем "Объекты+Интерфейсы+Наследование&qu ot;, но зачастую приводит к более компактным и понятным решениям. Устранение конкуренции также просто как и создание. Отсутсвие необходимости блокировки доступа к состоянию процесса для синхронизации их взаимодействия сильно облегчает жизнь. Для конкурентного ресурса обычно просто создается процесс-монитор, через который осуществляется взаимодействие с ресурсом.
Второй момент выражается в формуле "let it crash". Вместо перехвата ошибок и попытки продолжения работы часть программы, содержащая рискованный код, выделяется в отдельный процесс-камикадзе, этот процесс делает все возможное, чтобы система убила его в случае возниконвения ошибки, а процесс-родитель только получает сообщения о смерти таких незадачливых потомков и делает выводы. "
>>> Подробности