Rust 1.39 lançado com suporte a Async-Await, atributos nos parâmetros de função e mais

Foi lançada Rust 1.39 com suporte a Async-Await, atributos nos parâmetros de função e mais. Confira as novidades e veja como instalar no Linux.

Rust é uma linguagem de programação multiprocessal compilada, de propósito geral, desenvolvida pela Mozilla e apoiada pela LLVM. Ela foi concebida para ser “uma linguagem segura, concorrente e prática” e, acima de tudo, para substituir as linguagens C e C++.

Rust 1.39 lançado com suporte a Async-Await, atributos nos parâmetros de função e mais
Rust 1.39 lançado com suporte a Async-Await, atributos nos parâmetros de função e mais

Rust é uma linguagem de programação de código aberto que suporta programação funcional pura, processual, imperativa e orientada a objetos.

Essa linguagem de programação funciona de maneira extremamente rápida, evita os segfaults (falhas de segmentação) e garante a segurança dos subprocessos (threads).

Ela suporta abstrações de custo zero, semântica de movimento, segurança de memória garantida, encadeamentos genéricos baseados em recursos e não baseados em dados e correspondência de padrões, e também suporta inferência de tipos, tempo mínimo de execução, bem como links C eficientes.

Novidades do Rust 1.39

O Rust 1.39 está disponível como a mais recente atualização estável para esta popular linguagem de programação.

O mais destacado do Rust 1.39 é o suporte à espera assíncrona (async-waitit) para permitir que as funções sejam “pausadas” geralmente para E/S ou outros fins e, em seguida, para retomar a funcionalidade. Esse recurso foi proposto pela primeira vez em 2016 e agora, três anos depois, está disponível no Rust estável.

Mas o que é exatamente que é async-waitit? Você já deve saber como ele funciona em idiomas como C#, Dart, Kotlin ou JavaScript.

O guia Programação assíncrona em Rust diz que:

O código assíncrono nos permite executar várias tarefas simultaneamente no mesmo encadeamento do SO …

No geral, os aplicativos assíncronos têm o potencial de serem muito mais rápidos e usar menos recursos que uma implementação encadeada correspondente. No entanto, há um custo.

Threads são suportados nativamente pelo sistema operacional, e seu uso não requer nenhum modelo de programação especial – qualquer função pode criar um thread, e chamar uma função que usa threads é geralmente tão fácil quanto chamar qualquer função normal.

No entanto, funções assíncronas requerem suporte especial da linguagem ou bibliotecas.

Para usar async-waitit, use a sintaxe fn em vez de apenas fn. async fn retorna um Future. , que está aguardando para ser executado em um executor.

Para executar o Future, você usa .await.

Esse novo recurso marca uma grande mudança na linguagem.

Atualizações futuras incluirão mais melhorias, extensões e expansões de ecossistema para espera por async. Desde o lançamento da versão beta, o Rust já mudou e melhorou os diagnósticos anteriormente inúteis.

O Rust 1.39 agora também suporta atributos em parâmetros de função, novas funções const, adições de bibliotecas padrão e outras alterações.

O suporta atributos em parâmetros de funçãoo torna possível adicionar atributos externos aos parâmetros de funções, fechamentos e tipos de ponteiros de função.

De acordo com as notas de versão 1.39.0, esses atributos incluem compilação condicional (cfg, cfg_attr) e controle de cotas (allow, warn, deny, forbid ou permitir, advertir, negar, proibir).

O gerenciador de pacotes Rust recebe algumas atualizações.

  • Os arquivos de configuração podem usar a extensão de arquivo .toml
  • Suporte para a construção da biblioteca padrão diretamente do Cargo adicionado em Nightly
  • Adicionado o sinalizador --workspace como um alias para --all
  • Adicionado campo publish ao cargo metadata
  • O novo recurso -Ztimings gera um relatório sobre como o tempo gasto foi gasto nas etapas de compilação. Somente para Nightly.
  • Capacidade de doctests de compilação cruzada adicionada para Nightly

Para saber mais sobre essa versão do Rust 1.39, acesse a nota de lançamento.

Como instalar ou atualizar o Rust 1.39

Para instalar a versão mais recente do yyy nas principais distribuições Linux, use esse tutorial:
Como instalar a linguagem de programação Rust no Linux

O que está sendo falado no blog

No Post found.

Post Views: 312
Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.