1 pontos por GN⁺ 2023-12-19 | 1 comentários | Compartilhar no WhatsApp

Projeto Wasm3 entra em estado de manutenção

  • O projeto Wasm3 entrou em uma fase de manutenção mínima. A casa do desenvolvedor foi destruída por russos invasores, e ele não consegue continuar o desenvolvimento de novos recursos.
  • Ele promete revisar e mesclar pull requests ativamente para manter o projeto vivo.
  • Contribuições para o Wasm3 são mais importantes do que nunca.

Começando com o Wasm3

  • Siga o guia de instalação do Wasm3 para fazer a instalação.
  • O Wasm3 pode ser usado como biblioteca para várias linguagens e plataformas, como Python3, Rust, C/C++, GoLang etc.

Estado do Wasm3

  • O Wasm3 passa na suíte de testes de especificação do WebAssembly e consegue executar muitos apps WASI.
  • Os requisitos mínimos úteis do sistema são cerca de 64Kb para código e cerca de 10Kb de RAM.
  • Pode ser executado em várias arquiteturas (x86, ARM, RISC-V etc.) e plataformas (Linux, Windows, OS X, Android, iOS etc.).

Recursos do Wasm3

  • Suporta propostas centrais do WebAssembly e recursos adicionais. Por exemplo, inclui importação/exportação de globais mutáveis, rastreamento estruturado de execução e suporte a sistemas big-endian.
  • Ainda há recursos não suportados, como memória múltipla, tipos de referência e otimização de tail call.

Motivação do Wasm3

  • Há vários motivos para usar um "interpretador lento" em vez de um "JIT rápido". Em situações em que velocidade não é a principal preocupação, isso pode melhorar tamanho do executável, uso de memória e latência de inicialização.
  • É muito mais fácil alcançar e manter portabilidade e segurança.
  • Uma biblioteca simples como o Wasm3 é fácil de compilar e integrar a projetos existentes.
  • Em algumas plataformas (por exemplo, iOS e o próprio WebAssembly), não é possível criar páginas de código executável em tempo de execução, então o uso de JIT é inviável.

Áreas de aplicação do Wasm3

  • O Wasm3 começou como um projeto de pesquisa, e avaliar o motor em vários ambientes faz parte dessa pesquisa.
  • Assim como Lua, JS e Python são executados em MCU, o WebAssembly é uma alternativa promissora.
  • Há casos de uso práticos como edge computing, scripting, sistemas de plugins, execução de regras de IoT e contratos inteligentes.

Opinião do GN⁺

  • O projeto Wasm3 continua sendo mantido com contribuições da comunidade apesar das dificuldades pessoais do desenvolvedor, mostrando a resiliência dos projetos de código aberto e a importância da colaboração.
  • O Wasm3 é um interpretador versátil capaz de executar WebAssembly em várias plataformas e arquiteturas, desempenhando um papel importante na exploração do uso de WebAssembly em sistemas embarcados.
  • O foco do projeto em portabilidade e segurança sugere que o WebAssembly pode ser uma ferramenta útil mesmo em ambientes restritos, como sistemas embarcados.

1 comentários

 
GN⁺ 2023-12-19
Comentários no Hacker News
  • Participação do autor original (OP)

    • O autor original informou que está pronto para responder perguntas.
    • Compartilhou um link do Twitter com contexto adicional sobre o Wasm3.
  • Apreço e preocupação com o Wasm3

    • O Wasm3 estava à frente de outros interpretadores de Wasm em termos de desempenho, sendo de 3 a 5 vezes mais lento que código nativo e cerca de 3 vezes mais rápido que um interpretador de Wasm comum.
    • Espera-se que Volodymyr consiga superar a situação difícil causada pela Rússia, que invadiu a Ucrânia.
  • Explicação da situação atual do projeto Wasm3

    • Volodymyr informou à comunidade que sua casa foi destruída e que, por isso, só consegue manter o projeto Wasm3 no mínimo necessário.
    • Não é possível desenvolver novos recursos, mas ele prometeu fazer o possível para manter o projeto vivo e revisar e mesclar Pull Requests ativamente.
    • Agradeceu pela compreensão e pelo apoio neste período difícil e enfatizou que contribuir com o Wasm3 é mais importante do que nunca.
    • O link do tuíte publicado em setembro de 2022 mostra um vídeo da casa destruída e pede doações para quem quiser ajudar.
  • Comentário excluído

    • Indica que alguns comentários foram excluídos.