Post
There's only one "call cache" per "call data", - when our program is compiled it can only produce "call data" structures for method calls it knows about ahead of time. "obj.my_method" gets an explicit "call cache". But for `obj.send(:my_method)`, only the "send" call gets a "call cache"! /6
0 reposts1 like
Not just technically or in theory, all 3 are in fact equivalently fast on TruffleRuby! bsky.app/profile/ereg...
Though with @truffleruby.bsky.social one can in fact just #send it, even publicly, at 276 million iterations/second in all 3 cases! gist.github.com/byroot/780c1... (using the benchmark from bsky.app/profile/byro...)