2 Punkte von xguru 2023-12-26 | 2 Kommentare | Auf WhatsApp teilen
  • Neuer Prism-Parser hinzugefügt: ein rekursiver Abstiegparser, der produktionsreif ist. Er ersetzt Ripper
  • Parsergenerator von Bison auf Lrama umgestellt: fehlertolerant, benutzerfreundlich, leichter zu warten und ein universeller Parser, der auch in anderen Tools verwendet werden kann
  • YJIT-Leistungsverbesserungen: höhere Geschwindigkeit und geringerer Speicherverbrauch
  • Einführung von RJIT, einem reinen Ruby-JIT-Compiler, als Ersatz für MJIT: unterstützt nur x86-64, benötigt aber im Gegensatz zu MJIT keinen C-Compiler zur Laufzeit. Derzeit noch experimentell; für den produktiven Einsatz sollte YJIT verwendet werden
  • M:N-Thread-Scheduler hinzugefügt: Verwaltet M Ruby-Threads über N native Threads (OS-Threads), wodurch die Kosten für Erstellung und Verwaltung von Threads sinken

2 Kommentare

 
heka1024 2023-12-28

RUBY_GC_HEAP_INIT_SLOTS wird also ebenfalls durch RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS ersetzt. Stellen, an denen das GC-Tuning vorgenommen wurde, müssen wohl angepasst werden.

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

 
xguru 2023-12-26

Gemäß der Tradition der jährlichen Veröffentlichung am 25.12. ist auch dieses Jahr Version 3.3 erschienen.