Efter ett års utveckling släpptes det funktionella programmeringsspråket Erlang 25, som syftar till att utveckla distribuerade, feltoleranta applikationer som ger parallell bearbetning av förfrågningar i realtid. Språket har blivit utbrett inom områden som telekommunikation, banksystem, e-handel, datortelefoni och snabbmeddelanden. Samtidigt släpptes releasen av OTP 25 (Open Telecom Platform) - en kompletterande uppsättning bibliotek och komponenter för utveckling av distribuerade system på Erlang-språket.
Huvudsakliga innovationer:
- En ny "kanske ... slut"-konstruktion har implementerats för att gruppera flera uttryck i ett block, liknande "börja ... slut", men leder inte till export av variabler från blocket.
- Tillagt stöd för selektiv funktionsaktivering, så att du kan testa och gradvis introducera nya och potentiellt interoperabilitetsbrytande språk- och runtime-funktioner utan att bryta befintlig kod. Funktioner kan slås på och av både vid kompilering och genom att använda feature()-direktivet i kodfiler. Till exempel, för att aktivera ett nytt kanske-uttryck i din kod, kan du ange "feature(maybe_expr,enable)".
- JIT-kompilatorn implementerar optimeringar baserade på datatypinformation och lägger till stöd för 64-bitars ARM-processorer (AArch64). Förbättrat stöd för perf- och gdb-verktygen, som ger information om radnummer i koden.
- Lade till en ny peer-modul med funktioner för att köra relaterade Erlang-noder. När kontrollanslutningen till noden försvinner kommer noden automatiskt att stängas av.
- Lagt till stöd för OpenSSL 3.0.
- Funktionerna grupper_från_lista/2 och grupper_från_lista/3 har lagts till i kartmodulen för att gruppera en lista med element.
- Funktionerna uniq/1, uniq/2, enumerate/1 och enumerate/2 har lagts till listmodulen för att filtrera bort dubbletter av element i listan och generera en lista med tuplar med elementnummer.
- Randmodulen implementerar en ny, mycket snabb pseudoslumptalsgenerator.
Källa: opennet.ru