Como todos sabem, a linguagem de programação C++ é, sem dúvida, a mais volumosa entre as linguagens. Mesmo programadores que a utilizam há décadas não podem se gabar de conhecê-la completamente. Devido a isso, o comitê de padronização do C++ tomou uma decisão difícil: para que a linguagem permaneça competitiva diante das novas linguagens que emergem, como Rust, é necessário remover todas as funcionalidades legadas, escritas por estranhos goblins nas décadas de 1980. Para isso, contarão com os bem conhecidos desenvolvedores do Gnome, que na sua época eliminaram todas as funcionalidades desnecessárias do seu ambiente de desktop, tornando-o incomparável. Eles removerão todas as funcionalidades até que não reste mais nada além do C, do qual o C++ evoluiu, mas não pararão por aí, deixarão apenas o mínimo do C.
Em particular:
- as templates serão removidas e substituídas por tipagem dinâmica opcional (a perda de desempenho não será significativa para os computadores modernos)
- as exceções serão substituídas por códigos de erro no estilo go, com if err != nil
- a necessidade de sistemas de build será eliminada, em seu lugar haverá um gerenciador de pacotes estilo composer para PHP
- a herança múltipla será removida, junto com funções livres, agora tudo será um objeto, e todos os objetos herdarão da classe base Object
- não pode-se remover completamente o comportamento indefinido devido ao síndrome de Estocolmo dos desenvolvedores, então todo UB será automaticamente encapsulado em um teste unitário, executado 10 vezes, e o programador será informado sobre qual comportamento o compilador escolheu na maioria dos casos
O criador da linguagem, Bjarne Stroustrup, já se manifestou cético em relação às mudanças, argumentando que os desenvolvedores do Gnome não utilizam nem C++ nem Gnome.
Fonte: linux.org.ru
