Field Guide · language

Also known as: Ruby

Ruby is a dynamic, object-oriented, interpreted language created by Yukihiro “Matz” Matsumoto with an explicit goal of programmer happiness, and it is best known as the language behind the Ruby on Rails web framework.1

readable.rb code run interpreter web app(Rails)
Ruby code is read and executed by an interpreter; Rails is the framework that made it famous.

Overview

Ruby prizes readability and expressiveness over raw speed. Its syntax reads almost like English, nearly everything is an object, and its flexible metaprogramming lets libraries build clean, domain-specific interfaces.2 That power is what made Ruby on Rails so influential: the framework’s “convention over configuration” approach let small teams ship web applications fast, and it shaped a generation of web frameworks in other languages. Gems, installed through the RubyGems package manager, provide a large library ecosystem.

Key characteristics

Ruby is dynamically typed (see static vs dynamic typing) and garbage-collected, with code run by a bytecode virtual machine that has gained a JIT in recent releases.2 The trade-offs are well known: like other dynamic languages such as Python, it is comparatively slow in CPU-bound work and its loose typing lets some bugs reach runtime. Its popularity has cooled from the Rails peak, and its centre of gravity stays in web back ends, scripting, and automation rather than systems or numeric work.

Sources

  1. Ruby (programming language) — Wikipedia, for history, Matz’s design goals, and Rails. 

  2. Ruby programming language — official site, documentation, and the dynamic object model and runtime.  2

See also