{"product_id":"hacking-mri-diving-into-rubys-source-code-advanced-techniques-for-exploring-and-modifying-rubys-core-implementation-9798293167050","title":"Hacking MRI: Diving into Ruby's Source Code: Advanced Techniques for Exploring and Modifying Ruby's Core Implementation","description":"\u003cp\u003e • Author(s): Phiquill Publishing\u003cbr\u003e • Publisher: Independently Published\u003cbr\u003e • Publisher Imprint: Independently Published\u003cbr\u003e • BISAC: Programming Languages - Ruby\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eMaster MRI Source Code Navigation: \u003c\/b\u003e Develop the ability to confidently explore and understand the official Ruby MRI (Matz's Ruby Interpreter) source code, including its core directories and architectural components.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eBuild and Manage Custom Ruby Versions: \u003c\/b\u003e Acquire the practical skills to acquire, compile, and install Ruby from source, along with managing multiple custom MRI versions for development and testing.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eDeep Dive into the Ruby Virtual Machine (YARV): \u003c\/b\u003e Gain a comprehensive understanding of the YARV instruction set, compilation pipeline (parsing to AST to YARV instructions), and the execution flow of Ruby code.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eUnravel Ruby's Core Object Model: \u003c\/b\u003e Learn about the VALUE type, the internal representations of core classes like String, Array, and Hash, and the optimization techniques used for interned strings and symbols.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eGrasp Ruby's Dynamic Method Dispatch: \u003c\/b\u003e Understand how Ruby handles method lookups, caching, superclass traversal, and the inner workings of dynamic method definition (define_method) and method_missing.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eDemystify Ruby's Memory Management and GC: \u003c\/b\u003e Comprehend Ruby's memory allocation strategies, the generational garbage collector's operation (marking, sweeping, promotion), and techniques for tuning GC behavior.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eImplement Robust C Extensions with the Ruby C API: \u003c\/b\u003e Learn to create, bind, and interact with Ruby objects from C, enabling you to extend Ruby's functionality with high-performance native code.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eHandle Exceptions and Control Flow at the C Level: \u003c\/b\u003e Understand Ruby's exception handling mechanisms (rb_raise, rb_rescue) and how to define and manage custom exceptions and control flow using throw\/catch in C.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eOptimize Ruby Performance through Core Modifications: \u003c\/b\u003e Identify performance bottlenecks, apply low-level optimizations, and strategically rewrite critical code paths in C to enhance Ruby application performance.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eExplore and Manipulate the Ruby Parser (AST): \u003c\/b\u003e Gain insights into Ruby's parsing process, including the roles of Bison and Flex, and learn to build AST transformers for static analysis or custom language features.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eUnderstand YARV Compilation and JIT: \u003c\/b\u003e Delve into how Ruby code is compiled from AST to YARV instructions, explore optimization techniques, and comprehend the principles and performance tuning of Ruby's Just-In-Time (JIT) compilation.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eNavigate Ruby's Concurrency Model: \u003c\/b\u003e Understand the Global VM Lock (GVL), learn to implement thread-safe C extensions, and explore the Fiber API for cooperative multitasking and asynchronous I\/O.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eDebug and Profile Ruby and Native Code: \u003c\/b\u003e Master debugging techniques using GDB with MRI, utilize Ruby's TracePoint API, and employ profiling tools like perf and Valgrind to identify and resolve performance issues.\u003c\/p\u003e\u003cp\u003e✅ \u003cb\u003eContribute to the MRI Project: \u003c\/b\u003e Learn the essential steps for contributing to the official Ruby MRI project, including bug reporting, submitting patches, and engaging with the core development community.\u003c\/p\u003e","brand":"Independently Published","offers":[{"title":"Paperback","offer_id":47594792353943,"sku":"9798293167050","price":1986.0,"currency_code":"INR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0666\/3471\/1191\/files\/9798293167050.webp?v=1774987175","url":"https:\/\/atlanticbooks.com\/products\/hacking-mri-diving-into-rubys-source-code-advanced-techniques-for-exploring-and-modifying-rubys-core-implementation-9798293167050","provider":"Atlantic Books","version":"1.0","type":"link"}