È stata rilasciata la versione 29 del linguaggio di programmazione funzionale Erlang, mirata allo sviluppo di applicazioni distribuite e resilienti, capaci di gestire in parallelo richieste in tempo reale. Il linguaggio ha trovato applicazione in settori come telecomunicazioni, sistemi bancari, e-commerce, telefonia informatica e organizzazione di messaggistica istantanea. Contestualmente, è stato rilasciato OTP 29 (Open Telecom Platform) — un insieme di librerie e componenti per lo sviluppo di sistemi distribuiti tramite il linguaggio Erlang.
Novità principali:
- Nel server SSH, i servizi shell ed exec e il sottosistema SFTP sono disabilitati per impostazione predefinita. Per eseguire codice Erlang da parte di utenti autenticati tramite SSH, ora è necessario modificare le impostazioni. Nel SSH, per impostazione predefinita, è attivato un algoritmo ibrido di scambio delle chiavi mlkem768x25519-sha256.
- Nella libreria SSL Nella configurazione predefinita è stato impostato come algoritmo ibrido di scambio chiavi «x25519mlkem768», resistente agli attacchi dei computer quantistici e costituito da una combinazione di X25519 ECDH e dell'algoritmo ML-KEM (CRYSTALS-Kyber).
- È stato aggiunto l'attributo «-unsafe» per contrassegnare le funzioni come non sicure (unsafe). Nella libreria Erlang/OTP, tali funzioni sono contrassegnate e il compilatore ora emette un avviso per esse. È stata aggiunta la possibilità di monitorare tramite xref le chiamate a funzioni non sicure e funzioni senza documentazione.
- Per il corretto funzionamento degli strumenti di assemblaggio di terze parti, come Rebar3, la filtrazione delle chiamate ignorate (ignore_xref) ora viene eseguita direttamente all'interno di xref.
- Aggiunto il modulo ct_doctest per il test automatico degli esempi di codice dalla documentazione.
- Aggiunto il modulo io_ansi per la creazione di applicazioni console che supportano la sostituzione nel terminale delle sequenze ANSI (Virtual Terminal Sequences), ad esempio, per modificare lo stile e il colore del testo.
- Durante la ricerca dei percorsi dei file con codice (PATH), la cartella corrente (‘.’) è stata spostata dall'inizio alla fine dell'elenco e ora viene controllata per ultima.
- Interrotta la produzione di build a 32 bit per Windows.
- Implementato un tipo di dato completamente separato per le registrazioni (native record, EEP-79), che può essere utilizzato al posto delle tradizionali registrazioni basate su tuple.
- Aggiunto il limitatore ‘is_integer/3’ per verificare se gli interi appartengono a un intervallo (ad esempio, ‘is_integer(I, 0, 100)’).
- Implementati generatori di liste con valori multipli (EEP-78), che restituiscono più elementi per iterazione (ad esempio, ‘[-I, I || I 42 || K’
Fonte: opennet.ru
