Export Citations
The Ruby Programming Language is the authoritative guide to Ruby and provides comprehensive coverage of versions 1.8 and 1.9 of the language. It was written (and illustrated!) by an all-star team: David Flanagan, bestselling author of programming language "bibles" (including JavaScript: The Definitive Guide and Java in a Nutshell) and committer to the Ruby Subversion repository. Yukihiro "Matz" Matsumoto, creator, designer and lead developer of Ruby and author of Ruby in a Nutshell, which has been expanded and revised to become this book. why the lucky stiff, artist and Ruby programmer extraordinaire. This book begins with a quick-start tutorial to the language, and then explains the language in detail from the bottom up: from lexical and syntactic structure to datatypes to expressions and statements and on through methods, blocks, lambdas, closures, classes and modules. The book also includes a long and thorough introduction to the rich API of the Ruby platform, demonstrating -- with heavily-commented example code -- Ruby's facilities for text processing, numeric manipulation, collections, input/output, networking, and concurrency. An entire chapter is devoted to Ruby's metaprogramming capabilities. The Ruby Programming Language documents the Ruby language definitively but without the formality of a language specification. It is written for experienced programmers who are new to Ruby, and for current Ruby programmers who want to challenge their understanding and increase their mastery of the language.
Cited By
- Elizarov R, Belyaev M, Akhin M and Usmanov I Kotlin coroutines: design and implementation Proceedings of the 2021 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, (68-84)
- Sasada K Gradual write-barrier insertion into a Ruby interpreter Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory Management, (115-121)
- Routhier M and St-Denis R (2019). A qualitative assessment of $$\alpha $$?Rby in the perspective of the supervisory control theory, International Journal on Software Tools for Technology Transfer (STTT), 21:2, (121-141), Online publication date: 1-Apr-2019.
- Chung S Provably correct posit arithmetic with fixed-point big integer Proceedings of the Conference for Next Generation Arithmetic, (1-10)
- Sanchez P and Sanchez S A scalable discrete event stochastic agent-based model of infectious disease propagation Proceedings of the 2015 Winter Simulation Conference, (151-158)
- Clavreul J, Baumeister H, Christensen T and Damgaard A (2014). An environmental assessment system for environmental technologies, Environmental Modelling & Software, 60:C, (18-30), Online publication date: 1-Oct-2014.
- Felgentreff T, Borning A, Hirschfeld R, Lincke J, Ohshima Y, Freudenberg B and Krahn R Babelsberg/JS Proceedings of the 28th European Conference on ECOOP 2014 --- Object-Oriented Programming - Volume 8586, (411-436)
- Seaton C, Van De Vanter M and Haupt M Debugging at Full Speed Proceedings of the Workshop on Dynamic Languages and Applications, (1-13)
- Schmidt A, Kimmig D, Bittner K and Dickerhof M Teaching model-driven software development Proceedings of the Sixteenth Australasian Computing Education Conference - Volume 148, (97-104)
- Strickland T, Dimoulas C, Takikawa A and Felleisen M (2013). Contracts for First-Class Classes, ACM Transactions on Programming Languages and Systems, 35:3, (1-58), Online publication date: 1-Nov-2013.
- Diepenbeck M, Soeken M, Große D and Drechsler R Towards automatic scenario generation from coverage information Proceedings of the 8th International Workshop on Automation of Software Test, (82-88)
- Bloom B and Hirzel M (2012). Robust scripting via patterns, ACM SIGPLAN Notices, 48:2, (29-40), Online publication date: 23-Jan-2013.
- Bloom B and Hirzel M Robust scripting via patterns Proceedings of the 8th symposium on Dynamic languages, (29-40)
- Biallas S, Brauer J, King A and Kowalewski S Loop leaping with closures Proceedings of the 19th international conference on Static Analysis, (214-230)
- Bodden E InvokeDynamic support in Soot Proceedings of the ACM SIGPLAN International Workshop on State of the Art in Java Program analysis, (51-55)
- Soeken M, Wille R and Drechsler R Assisted behavior driven development using natural language processing Proceedings of the 50th international conference on Objects, Models, Components, Patterns, (269-287)
- Segal L and Chalin P A comparison of intermediate verification languages Proceedings of the 4th international conference on Verified Software: theories, tools, experiments, (130-145)
- Günther S Development of internal domain-specific languages Proceedings of the 18th Conference on Pattern Languages of Programs, (1-25)
- Savidis A Supporting cross-language exception handling when extending applications with embedded languages Proceedings of the Third international conference on Software engineering for resilient systems, (93-99)
- Teichmann C Reducing the size of the representation for the uDOP-estimate Proceedings of the First Workshop on Unsupervised Learning in NLP, (24-34)
- Decraene J, Chandramohan M, Low M and Choo C Evolvable simulations applied to automated red teaming Proceedings of the Winter Simulation Conference, (1444-1455)
- Günther S and Cleenewerck T Design principles for internal domain-specific languages Proceedings of the 17th Conference on Pattern Languages of Programs, (1-35)
- Günther S and Fischer M Metaprogramming in Ruby Proceedings of the 17th Conference on Pattern Languages of Programs, (1-35)
- Stadler L, Würthinger T and Wimmer C Efficient coroutines for the Java platform Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java, (20-28)
- Furr M, An J, Foster J and Hicks M (2009). The ruby intermediate language, ACM SIGPLAN Notices, 44:12, (89-98), Online publication date: 25-Dec-2009.
- Furr M, An J, Foster J and Hicks M The ruby intermediate language Proceedings of the 5th symposium on Dynamic languages, (89-98)
- Furr M, An J and Foster J Profile-guided static typing for dynamic scripting languages Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications, (283-300)
- Furr M, An J and Foster J (2009). Profile-guided static typing for dynamic scripting languages, ACM SIGPLAN Notices, 44:10, (283-300), Online publication date: 25-Oct-2009.
- Kiciman E, Livshits B and Musuvathi M CatchAndRetry Proceedings of the Fifth Workshop on Programming Languages and Operating Systems, (1-5)
- Günther S and Sunkle S Feature-oriented programming with Ruby Proceedings of the First International Workshop on Feature-Oriented Software Development, (11-18)
- Danvy O, Shan C and Zerny I J Is for JavaScript Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages, (1-19)
- Chern R and De Volder K (2008). The impact of static-dynamic coupling on remodularization, ACM SIGPLAN Notices, 43:10, (261-276), Online publication date: 27-Oct-2008.
- Chern R and De Volder K The impact of static-dynamic coupling on remodularization Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications, (261-276)
- Lobachev O and Loogen R Towards an Implementation of a Computer Algebra System in a Functional Language Proceedings of the 9th AISC international conference, the 15th Calculemas symposium, and the 7th international MKM conference on Intelligent Computer Mathematics, (141-154)