Несколько часов назад команда Erlang объявила об очередном релизе языка программирования и всей платформы.
Напомню что Erlang/OTP предназначен для создания широко масштабируемых систем работающих в режиме мягкого реального времени с требованиями высокой доступности. Платформа давно и успешно используется в таких сферах как телекоммуникации, банки, электронная коммерция, телефония и мгновенная передача сообщений.
Основные изменения в этом релизе:
- Добавлен новый (эксперементальный) модуль socket предоставляющий низкоуровневый доступ к сокетам ОС. Это не замена gen_tcp и другим, и пока не работает на Windows (на микробенчмарке он показал прирост скорости в ~40% по сравнению с gen_tcp)
- Изменены стадии компиляции и внутренние представления компилятора для добавления новых оптимизаций (детальный обзор)
- Оптимизации сравнения с образцом (pattern matching) для бинарного типа данных теперь применяются в бóльшем количестве случаев
- Большие сообщения в Erlang Distribution Protocol (отвечающего за передачу данных между узлами) теперь разбиваются на несколько фрагментов
- Обращаю внимание на модули counters, atomics и persistent_term добавленные в 21.2 и расширяющие набор иструментов для работы в конкурентной среде
Так же улучшения коснулись функции length/1 на длинных списках, ETS таблиц типа ordered_set, NIF интерфейс получил функцию enif_term_type, опций компилятора erlc, версии SSL и функций модуля crypto.
Запись в блоге с разбором изменений, примерами и бенчмарками
Источник: linux.org.ru
