Browse files


  • Loading branch information...
1 parent aa5d43d commit a3c9a41ee906a5555137f06ddd19110d817a5752 @benjaminoakes benjaminoakes committed Sep 30, 2011
Showing with 7 additions and 0 deletions.
  1. +7 −0
@@ -1,3 +1,8 @@
+> What does really happen when we call a method? How do the different Ruby implementations actually figure out what code to execute? What plumbing is going on under the hood to get a speedy dispatch? In this talk we will have a look at the internals of the four major Ruby implementations - 1.8, 1.9, JRuby and Rubinius, focusing on their dispatch. From look-up tables and call site caches, to inlining and what on earth is invokedynamic? Expect C, C++, Java, and, of course, Ruby code. But fear not, all will be explained!
@@ -59,3 +64,5 @@ Takeaways
* Fewer instructions == better
* MRI -- what could it do better? It's adding super-instructions
* Late binding
+* Symbols aren't garbage collected. You have user generated symbols? They'll take up more and more memory!
+ * They're the same object between instances

0 comments on commit a3c9a41

Please sign in to comment.