După un an de dezvoltare, a avut loc lansarea limbajului de programare funcțional Erlang 25, destinat dezvoltării aplicațiilor distribuite rezistente la erori, care asigură procesarea paralelă a cererilor în timp real. Limbajul a câștigat popularitate în domenii precum telecomunicațiile, sistemele bancare, comerțul electronic, telefonia computerizată și organizarea schimbului instantaneu de mesaje. De asemenea, a fost lansată versiunea OTP 25 (Open Telecom Platform) - un set asociat de biblioteci și componente pentru dezvoltarea sistemelor distribuite în limbajul Erlang.
Noutăți principale:
- A fost implementată o nouă construcție „maybe … end” pentru gruparea mai multor expresii într-un singur bloc, similar cu „begin … end”, dar care nu duce la exportarea variabilelor din bloc.
- A fost adăugată suportul pentru activarea selectivă a funcționalităților, permițând testarea și implementarea treptată a noilor funcționalități și a celor potențial incompatibile fără a afecta funcționarea codului existent. Funcționalitățile pot fi activate sau dezactivate atât în timpul compilării, cât și prin intermediul directivei feature() în fișierele de cod. De exemplu, pentru a activa o nouă expresie maybe în cod, se poate specifica „feature(maybe_expr,enable)”.
- În compilatorul JIT au fost implementate optimizări bazate pe informații despre tipurile de date și a fost adăugat suport pentru procesoarele ARM pe 64 de biți (AArch64). Suportul pentru utilitarele perf și gdb a fost îmbunătățit, asigurând transferul informațiilor despre numerele de linie din cod.
- A fost adăugat un nou modul peer cu funcții pentru lansarea nodurilor Erlang asociate. După pierderea conexiunii de control cu un nod, funcționarea nodului se oprește automat.
- A fost adăugat suport pentru OpenSSL 3.0.
- În modulul maps au fost adăugate funcțiile groups_from_list/2 și groups_from_list/3 pentru gruparea unei liste de elemente.
- În modulul lists au fost adăugate funcțiile uniq/1, uniq/2, enumerate/1 și enumerate/2 pentru eliminarea elementelor duplicat din listă și generarea unei liste de tupluri cu numerele elementelor.
- În modulul rand a fost implementat un nou generator de numere pseudo-aleatoare foarte rapid.
Sursa: opennet.ro
