How Ruby Works Under the Hood
Ruby is a powerful programming language with a focus on simplicity, but beneath its elegant syntax it performs countless unseen tasks.
Ruby Under a Microscope gives you a hands-on look at Ruby’s core, using extensive diagrams and thorough explanations to show you how Ruby is implemented (no C skills required). Author Pat Shaughnessy takes a scientific approach, laying out a series of experiments with Ruby code to take you behind the scenes of how programming languages work. You’ll even find information on JRuby and Rubinius (two alternative implementations of Ruby), as well as in-depth explorations of Ruby’s garbage collection algorithm.
Ruby Under a Microscope will teach you:
How a few computer science concepts underpin Ruby’s complex implementation
How Ruby executes your code using a virtual machine
How classes and modules are the same inside Ruby
How Ruby employs algorithms originally developed for Lisp
How Ruby uses grammar rules to parse and understand your code
How your Ruby code is translated into a different language by a compiler
No programming language needs to be a black box. Whether you’re already intrigued by language implementation or just want to dig deeper into Ruby, you’ll find Ruby Under a Microscope a fascinating way to become a better programmer.
Covers Ruby 2.x, 1.9 and 1.8
......(更多)
Well known for his coding expertise and passion for the Ruby programming language, Pat Shaughnessy blogs and writes tutorials at patshaughnessy.net. He also develops Ruby applications at management consulting firm McKinsey & Co. Shaughnessy is a regular presenter on the Ruby conference circuit, and his articles and presentations have been featured in the Ruby Weekly newsletter, the Ruby5 podcast, and The Ruby Show.
......(更多)
Foreword by Aaron Patterson
Acknowledgments
Introduction
Chapter 1: Tokenization and Parsing
Chapter 2: Compilation
Chapter 3: How Ruby Executes Your Code
Chapter 4: Control Structures and Method Dispatch
Chapter 5: Objects and Classes
Chapter 6: Method Lookup and Constant Lookup
Chapter 7: The Hash Table: The Workhorse of Ruby Internals
Chapter 8: How Ruby Borrowed a Decades-Old Idea from Lisp
Chapter 9: Metaprogramming
Chapter 10: JRuby: Ruby on the JVM
Chapter 11: Rubinius: Ruby Implemented with Ruby
Chapter 12: Garbage Collection in MRI, JRuby, and Rubinius
Index
......(更多)
实例变量的名字被保存在对象的类中,因为同一个类的所有实例变量的名字都是相同的
......(更多)