Whose Memory is it Anyway

Ruby’s dynamic nature makes for a great developer experience but causes challenges during compilation. More information gives the compiler more opportunities to generate better code.

In this talk, I’ll show how statements can be optimized, re-ordered, and removed in ZJIT. We will discuss a new side effect analysis system, show the improvements in code generation due to this design, and discuss the future performance increases that the effect system may lead to.

  • Jacob Denbeaux
    Jacob Denbeaux

    Jacob joined the Ruby Infrastructure team at Shopify in 2025. They work on ZJIT and anything involving lattices or binaries. They enjoy running, snow sports, and electromagnetic fault injection. Jacob is based in Vermont.