Lançamento do Ruby 3.1.0
(ruby-lang.org)- Merge do YJIT: novo compilador JIT in-process criado pela Shopify
→ Arquitetura Lazy Basic Block Versioning (LBBV)
→ Melhorias na velocidade de warm-up e no desempenho, cerca de 22% a 39%
→ Desativado por padrão. Pode ser usado com --yjit
- Inclusão do
debug.gem, reescrito do zero
→ Melhoria no desempenho de depuração
→ Suporte a depuração remota
→ Suporte a frontends de depuração como VSCode/Chrome
→ Depuração multithread/multiprocesso
→ REPL colorido
→ Record & Replay
- Adição da gem
error_highlight
→ Mostra a posição detalhada do erro no backtrace
- Adição de autocompletar no IRB
→ Se a documentação estiver instalada, ela é mostrada ao lado durante o autocompletar
- Linguagem
→ Agora é possível omitir valores em literais de Hash e argumentos nomeados
⇨ {x: x, y: y} vira {x:, y:}
⇨ foo(x: x, y: y) vira foo(x:, y:)
→ Em pattern matching, o operador Pin (^) pode usar expressões
⇨ Prime.each_cons(2).lazy.find_all{_1 in [n, ^(n + 2)]}.take(3).to_a
→ Em pattern matching de uma linha, os parênteses podem ser omitidos
⇨ [0, 1] => _, x
⇨ {y: 2} => y:
1 comentários
Seguindo a tradição de lançar todo Natal, este ano também:
Lançamento do Ruby 3.0.0 https://pt.news.hada.io/topic?id=3471
Lançamento do Ruby 2.7.0 https://pt.news.hada.io/topic?id=1149