2P by xguru 11달전 | favorite | 댓글 2개
  • 새로운 Prism 파서 추가 : 재귀 하향 파서로 프로덕션에서 사용 가능. Ripper를 대체
  • 파서 생성기를 Bison에서 Lrama로 교체 : Error-Tolerant로 사용성이 좋고, 유지보수가 쉬우며, 다른 도구에서 사용 가능한 Universal 파서
  • YJIT 성능 개선 : 속도 개선 및 메모리를 적게 사용
  • 순수 Ruby JIT 컴파일러인 RJIT를 도입하고 MJIT를 대체 : x86-64만 지원하지만, MJIT와 달리 런타임에 C컴파일러 필요없음. 아직은 실험용도이며 프로덕션에서는 YJIT를 사용해야함
  • M:N 스레드 스케줄러 추가 : M개의 Ruby 스레드를 N개의 네이티브 스레드(OS 스레드)로 관리하므로 스레드의 생성, 관리 비용이 절감

RUBY_GC_HEAP_INIT_SLOTS도 RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS으로 대체되는군요. GC 튜닝했던 곳들은 바꾸어야겠네요

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

매년 12/25일에 출시하는 전통에 따라 올해도 3.3이 나왔습니다.