The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз Erlang/OTP 29

16.05.2026 14:21 (MSK)

Состоялся релиз функционального языка программирования Erlang 29, нацеленного на разработку распределённых отказоустойчивых приложений, обеспечивающих параллельную обработку запросов в режиме реального времени. Язык получил распространение в таких областях, как телекоммуникации, банковские системы, электронная коммерция, компьютерная телефония и организация мгновенного обмена сообщениями. Одновременно выпущен релиз OTP 29 (Open Telecom Platform) - сопутствующего набора библиотек и компонентов для разработки распределённых систем на языке Erlang.

Основные новшества:

  • В SSH-сервере по умолчанию отключены сервисы shell и exec, а также подсистема SFTP. Для выполнения Erlang-кода аутентифицированными пользователями через SSH теперь требуется изменение настроек. В SSH по умолчанию активирован гибридный алгоритм обмена ключами mlkem768x25519-sha256.
  • В библиотеке SSL в конфигурации по умолчанию выставлен наиболее приоритетным гибридный алгоритм обмена ключами "x25519mlkem768", стойкий к подбору на квантовом компьютере и представляющий собой комбинацию из X25519 ECDH и алгоритма ML-KEM (CRYSTALS-Kyber).
  • Добавлен атрибут "-unsafe" для пометки функций небезопасными (unsafe). В библиотеке Erlang/OTP подобные функции помечены и для них компилятор теперь выдаёт предупреждение. Добавлена возможность отслеживания через xref вызова unsafe-функций и функций без документации.
  • Для корректной работы сторонних сборочных инструментов, таких как Rebar3, фильтрация игнорируемых вызовов (ignore_xref) теперь выполняется непосредственно внутри xref.
  • Добавлен модуль ct_doctest для автоматического тестирования примеров кода из документации.
  • Добавлен модуль io_ansi для создания консольных приложений, поддерживающих подстановку в терминал ANSI-последовательностей (Virtual Terminal Sequences), например, для изменения стиля и цвета текста.
  • При поиске файловых путей с кодом (PATH) текущий каталог (".") перемещён с первой на последнюю позицию списка и теперь проверяется в последнюю очередь.
  • Прекращено формирования 32-разрядных сборок для Windows.
  • Реализован полноценный отдельный тип данных для записей (native record, EEP-79), который можно использовать вместо традиционных записей, построенных на кортежах.
  • Добавлен ограничитель "is_integer/3" для проверки целых чисел на принадлежность диапазону (например, "is_integer(I, 0, 100)").
  • Реализованы генераторы списков с множественными значениями (EEP-78), возвращающие несколько элементов за итерацию (например, "[-I, I || I <- [1, 2, 3]]" выдаст "[-1,1,-2,2,-3,3]").
  • Добавлен флаг compr_assign, позволяющий связывать переменные прямо внутри генераторов (например, "[H || E <- List, H = erlang:phash2(E), H rem 10 =:= 0]").
  • В JIT-компиляторе улучшена генерация машинного кода для сопоставления и создания бинарных данных с несколькими little-endian сегментами.
  • В компиляторе повышена эффективность генерируемого кода в ситуациях, когда значения в "map" не зависят от генератора (например, "#{K => 42 || K <- List}").
  • В компиляторе реализован вывод предупреждений при использовании устаревшего оператора "catch" вместо "try...catch", экспорта переменных из подвыражений (например, "file:open(File, AllOpts = [write, {encoding,utf8}])"), использования "and"/"or" вместо "andalso"/"orelse", указания неоптимальных шаблонов сопоставления (например, "{a,B} = {X,Y}").
  • В STDLIB реализованы функции rand:shuffle/1 и rand:shuffle_s/2 для перемешивания списков в случайном порядке.


  1. Главная ссылка к новости (https://www.erlang.org/news/18...)
  2. OpenNews: Релиз Erlang/OTP 25
  3. OpenNews: Уязвимость в SSH-сервере из Erlang/OTP, допускающая удалённое выполнение кода
  4. OpenNews: Умер Джо Армстронг, один из авторов языка программирования Erlang
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65455-erlang
Ключевые слова: erlang
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (6) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 15:03, 16/05/2026 [ответить]  
  • +/
    > Добавлен атрибут "-unsafe" для пометки функций небезопасными (unsafe).

    А это безопасно ли разрабатывать программы на языке с небезопасным кодом?

     
  • 1.2, Аноним (2), 15:04, 16/05/2026 [ответить]  
  • +2 +/
    Древнее зло пробудилось!
     
  • 1.3, Аноним (3), 15:18, 16/05/2026 [ответить]  
  • +/
    Банковские системы на КОБОЛе, откуда этот пассаж о них на эрланге? Пруфпики будут?
     
     
  • 2.5, Аноним (5), 15:22, 16/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Там не только SWIFT. Кобол и в банкоматах был, но лет 15 назад начали вытеснять.  Почему-то на D заменяли. Эрланг более жизнеспособно.
     

  • 1.4, Аноним (5), 15:18, 16/05/2026 [ответить]  
  • +/
    Ejabberd ничего так был, субъективно аптайм выше альтернатив тоже https://www.process-one.net/blog/ejabberd-nintendo-switch-npns/
     
     
  • 2.6, rain (??), 15:36, 16/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    "Был"? Он и сейчас вполне ничего.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру