O documento apresenta as principais novidades da versão 2.1 do Ruby, incluindo novos recursos como Refinements, Literais Decimais, todos os símbolos, bytes inválidos, def implementation e argumentos nomeados. Também discute melhorias internas como profiling, caching de métodos e coleta de lixo.
2. Marcio Trindade
• Formado em Ed. Física.
• Trabalho com Ruby desde 2008.
• marciotrindade.com
• twitter.com/marciotrindade
• github.com/marciotrindade
15. Profiling
• Uma nova API para medições e realizar
métricas com baixo custo.
• Além disso o módulo ObjectSpace ganhou
alguns métodos que podem nos ajudar a
encontrar problemas de memory leak.
• Verificar a palestra do "Sam Rawlins" na
RubyConf 2013
16. Method caching
• Alteração realizada na VM do ruby onde
melhoraram a forma de invalidar cache de
metódos, com isso temos uma melhora de
performance de até 10%.
17. Number improvements
• Internamente passa a utilizar inteiros de 128 bits
para representar os "bignums" além de utilizar a
biblioteca (GNU Multiple Precision Arithmetic
Library) que traz um ganho de performance e
precisão para cálculos complexos.
18. Frozen String Literals
• Alteração na vm pra reutilizar Strings
congeladas assim como ocorre com os
símbolos.
19. RGenGC
• Koichi Sasada implementou um novo Garbage
Collector que diferencia objetos novos e velhos,
diminuindo assim o tempo necessário para marcar
os objetos, com isso temos um tempo menor em
que a VM fica parada (o famoso stop the world)
Tim Robertson
http://omniref.com/blog/blog/2014/03/27/ruby-garbage-collection-still-not-
ready-for-production/
!
Sam Saffron
http://samsaffron.com/archive/2014/04/08/ruby-2-1-garbage-collection-
ready-for-production