Ruby is a dynamic programming language with a complex but expressive grammar and a core class library with a rich and powerful API. Ruby draws inspiration from Lisp, Smalltalk, and Perl, but uses a grammar that is easy for C and Java™ programmers to learn. Ruby is a pure object-oriented language, but it is also suitable for procedural and functional programming styles. It includes powerful metaprogramming capabilities and can be used to create domain-specific languages or DSLs.
Matz on Ruby
Yukihiro Matsumoto, known as Matz to the English-speaking Ruby community, is the creator of Ruby and the author of Ruby in a Nutshell (O’Reilly) (which has been updated and expanded into the present book). He says:
I knew many languages before I created Ruby, but I was never fully satisfied with them. They were uglier, tougher, more complex, or more simple than I expected. I wanted to create my own language that satisfied me, as a programmer. I knew a lot about the language’s target audience: myself. To my surprise, many programmers all over the world feel very much like I do. They feel happy when they discover and program in Ruby.
Throughout the development of the Ruby language, I’ve focused my energies on making programming faster and easier. All features in Ruby, including object-oriented features, are designed to work as ordinary programmers (e.g., me) expect them to work. Most programmers feel it is elegant, easy to use, and a pleasure to program.
Matz’s guiding philosophy for the design of Ruby is summarized in an oft-quoted remark of his:
Ruby is designed to make programmers happy.
3.135.196.103