A linguagem de programação Rust assinala o seu 10º aniversário com o lançamento da versão 1.87, uma atualização que introduz diversas melhorias significativas. Esta nova iteração foca-se em otimizar a comunicação entre processos, reforçar a segurança em código de baixo nível e aumentar a flexibilidade no desenho de APIs e traits.
Comunicação entre processos e segurança reforçadas
Uma das novidades de destaque na Rust 1.87 é a introdução de anonymous pipes (canais anónimos) na biblioteca standard. Esta funcionalidade permite uma integração mais fluida com std::process::Command
para entrada e saída de dados, simplificando consideravelmente a comunicação entre processos distintos.
No que diz respeito à segurança, muitas das funções intrínsecas std::arch
, que anteriormente eram consideradas unsafe
apenas devido a requisitos de target features (funcionalidades específicas do processador), podem agora ser utilizadas de forma segura no código sempre que essas features estejam ativas. Esta alteração reduz a necessidade de recorrer a blocos unsafe
, um alívio para os programadores que trabalham com funções específicas de hardware.
Maior expressividade para código de baixo nível e APIs mais flexíveis
Para os programadores que trabalham mais perto do metal, nomeadamente em sistemas embebidos ou na otimização de fluxos de controlo, as macros de assembly inline (asm!
) foram aprimoradas. Agora, estas macros suportam saltos diretos para blocos de código rotulados (labeled blocks), o que expande as capacidades expressivas para interações diretas com o hardware.
Continuando o trabalho de estabilização da linguagem, a Rust 1.87 permite agora a especificação de tipos genéricos capturados e lifetimes (tempos de vida) em definições de traits que utilizam tipos de retorno impl Trait
. Esta capacidade oferece uma maior flexibilidade no desenho de APIs e na criação de traits mais versáteis e robustos.
Outras novidades e fim de suporte
Além destas alterações principais, a versão 1.87 da Rust traz consigo a estabilização de múltiplas APIs, diversas correções de bugs que melhoram a experiência geral de desenvolvimento e, como nota de manutenção, a remoção do suporte de Tier 2 para o target i586-pc-windows-msvc
.
Esta atualização, lançada num marco celebratório para a linguagem, demonstra o contínuo empenho da equipa Rust em evoluir e refinar uma ferramenta cada vez mais popular no mundo da programação pela sua segurança e desempenho.
Nenhum comentário
Seja o primeiro!