Ruby Core Updates: Parser Transition and Performance Improvements
Ruby core merged five pull requests including a significant shift to using Prism parser for builtin loader generation and Apple-specific memory search optimizations. Additional commits included Prism enhancements and test stability fixes.
Duration: PT1M42S
Episode overview
This episode is a short developer briefing from Ruby Core Updates.
It explains recent repository work in plain language.
- Show: Ruby Core Updates
- Published: 2026-03-14T10:10:40Z
- Audio duration: PT1M42S
Transcript excerpt
This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.
Good morning, this is Ruby Core Updates for March 14th, 2026.
Kevin Newton merged a major change switching mk_builtin_loader.rb to use Prism for parsing. This creates a new C tool that dumps Ruby files to JSON using Prism, then processes the AST with Ruby instead of the previous approach. The change affects twelve files with over 500 lines modified.
Newton also merged performance improvements for Apple systems, addressing slow memmem implementation in Apple's libc. The fix falls back to Ruby's rolling hash algorithm, showing up to 30% performance improvement in string searching operations.
A memory safety fix was merged addressing use-after-poison issues in compile.c and prism_compile.c. This prevents garbage collection from accidentally collecting arrays during bulk insert operations.
Burdette Lamar merged documentation improvements for Pathname glob methods, adding 40 lines of clarifying documentation. Luke Gruber merged a test timeout adjustment for garbage collection tests that were experiencing CI failures.
Additional commits included Prism location method enhancements by Seong Yong-ju, adding start_line, end_line, and column position methods. Benoit Daloze optimized Prism's…
Nearby episodes from Ruby Core Updates
- ZJIT TracePoint and Subclass Improvements
- ZJIT Performance and Security Fixes
- JIT Compiler Fixes and VM Optimizations
- Weekly Recap - ZJIT Optimization & Parser Modernization
- ZJIT Optimizations and Prism Compiler Improvements
- Threading and RubyGems Compatibility Fixes
- ZJIT Optimization and Core Fixes
- ZJIT Optimizations and Zlib Updates