Herb Sutter, vera e propria autorità nel mondo della programmazione e presidente del comitato ISO per C++, ha recentemente lasciato Microsoft dopo oltre vent'anni per approdare a Citadel Securities. Sutter, manterrà comunque il suo ruolo di guida nel comitato C++, dove si preannuncia un periodo decisivo per lo sviluppo del linguaggio. Durante la conferenza CppCon 2024, ha infatti annunciato che la futura versione C++ 26 sarà la release più impattante dai tempi di C++ 11. Introducendo una serie di novità che saranno in grado di cambiare il modo in cui i programmatori scrivono e ottimizzano il codice.
C++ 26: cosa ci aspetta
C++ 26 punterà principalmente su tre aree chiave: sicurezza, concorrenza e riflessione. La libreria std::execution
rappresenta uno dei pilastri del nuovo standard, offrendo strumenti avanzati per la gestione della concorrenza. Si tratta di un passo essenziale per migliorare le performance e l'efficienza dato che la concorrenza è un aspetto cruciale nelle applicazioni moderne, specialmente per i sistemi distribuiti e il calcolo parallelo.
ISO C++ Chair Herb Sutter leaves Microsoft, declares forthcoming C++ 26 ‘most impactful release since C++11’ https://t.co/NQWqLVoLiU
— devclass (@d3vclass) November 12, 2024
Per quanto riguarda la sicurezza, il linguaggio introdurrà nuovi strumenti statici e dinamici volti a prevenire errori comuni e vulnerabilità. Un passo necessario per competere con linguaggi emergenti, come Rust, che sono stati progettati con la sicurezza al centro di tutto sin dal principio.
Sutter e il comitato ISO sono consapevoli delle critiche che vedono C++ come un linguaggio potenzialmente pericoloso e puntano a rafforzarlo anche su questo fronte, introducendo librerie standard più sicure e risolvendo buona parte dei problemi di gestione della memoria che sono già noti da tempo.
Nuovi scenari per la metaprogrammazione
Un altro aspetto interessante riguarderà l'integrazione della riflessione e della generazione di codice. Essa aprirà nuove possibilità per la metaprogrammazione. Queste caratteristiche consentiranno di ottenere informazioni dettagliate sul codice a runtime e di generare parti di esso automaticamente, migliorando la flessibilità e la manutenzione.
Nonostante l'entusiasmo di molti, alcuni sviluppatori vedono queste novità con scetticismo, temendo che aumentino la complessità del linguaggio. Sutter e i membri del comitato puntano però a rendere C++ ancora più potente senza comprometterne l'efficienza, facendo della versione 26 un punto di svolta per la community che ruota intorno al linguaggio.