RubyConf 2022: Splitting: the Crucial Optimization for Ruby Blocks by Benoit Daloze

Channel:
Subscribers:
42,400
Published on ● Video Link: https://www.youtube.com/watch?v=PjUpcR5UPHI



Duration: 28:19
64 views
2


Blocks are one of the most expressive parts of the Ruby syntax. Many Ruby methods take a block. When a method is given different blocks, there is a crucial optimization necessary to unlock the best performance. This optimization dates back to the early days of research on dynamic languages, yet it seems only a single Ruby implementation currently uses it. This optimization is called splitting and what it does is using different copies of a method and specialize them to the block given at different call sites. This enables compiling the method and the block together for the best performance.




Other Videos By Confreaks


2023-03-07RubyConf 2022: Ruby Archaeology: Forgotten web frameworks by Nick Schwaderer
2023-03-07RubyConf 2022: Building a Commercial Game Engine using mRuby and SDL by Amir Rajan
2023-03-07RubyConf 2022: Building Native GUI Apps in Ruby by Andy Maleh
2023-03-07RubyConf 2022: Improving the development experience with language servers by Vinicius Stock
2023-03-07RubyConf 2022: The Power of 'No' by Glenn Harmon
2023-03-07RubyConf 2022: RSpec: The Bad Parts by Caleb Hearth
2023-03-07RubyConf 2022: Working Together: Pairing as Senior and Junior Developers by Kelly Ryan
2023-03-07RubyConf 2022: Helping Redistrict California with Ruby by Jeremy Evans
2023-03-07RubyConf 2022: From beginner to expert, and back again by Michael Toppa
2023-03-07RubyConf 2022: In Defense of Ruby Metaprogramming By Noel Rappin
2023-03-07RubyConf 2022: Splitting: the Crucial Optimization for Ruby Blocks by Benoit Daloze
2023-03-07RubyConf 2022: Never again without a contract: dry-validation by Espartaco Palma
2023-03-07RubyConf 2022: Don't @ me! Faster Instance Variables with Object Shapes by Aaron Patterson
2023-03-07RubyConf 2022: scip-ruby - A Ruby indexer built with Sorbet by Varun Gandhi
2023-03-07RubyConf 2022: Keynote by Suzan Bond
2023-03-07RubyConf 2022: I'm in love with Mermaid by Carolyn Cole
2023-03-07RubyConf 2022: Data indexing with RGB (Ruby, Graphs and Bitmaps) by Benjamin Lewis
2023-03-07RubyConf 2022: How music works, using Ruby Thijs Cadier
2023-03-07RubyConf 2022: Staff Engineer: β€œHere be dragons” by Alexandre Terrasa
2023-03-07RubyConf 2022: 1.5 is the Midpoint Between 0 and Infinity by Peter Zhu
2023-03-07RubyConf 2022: Simulated Annealing: The Most Metal Algorithm Ever 🀘 by Chris Bloom



Tags:
Ruby
RubyConf
Ruby on Rails
Ruby Language
Ruby Friends
Ruby Gems