2 pontos por xguru 2023-12-26 | 2 comentários | Compartilhar no WhatsApp
  • Adição do novo parser Prism: um parser descendente recursivo pronto para uso em produção. Substitui o Ripper
  • Substituição do gerador de parser de Bison para Lrama: um parser universal tolerante a erros, com boa usabilidade, fácil de manter e utilizável em outras ferramentas
  • Melhorias de desempenho no YJIT: aumento de velocidade e menor uso de memória
  • Introdução do RJIT, um compilador JIT puro em Ruby, substituindo o MJIT: suporta apenas x86-64, mas, ao contrário do MJIT, não precisa de compilador C em tempo de execução. Ainda é experimental, e em produção deve-se usar o YJIT
  • Adição de um escalonador de threads M:N: gerencia M threads Ruby em N threads nativas (threads do SO), reduzindo o custo de criação e gerenciamento de threads

2 comentários

 
heka1024 2023-12-28

Pelo visto, RUBY_GC_HEAP_INIT_SLOTS também está sendo substituído por RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS. Parece que os lugares onde o GC foi ajustado vão precisar ser alterados.

https://bugs.ruby-lang.org/issues/19785

 
xguru 2023-12-26

Seguindo a tradição de lançar todo ano em 25/12, a versão 3.3 também saiu este ano.