Ruby (англ. ruby – рубин, произносится – руби) – динамический, рефлективный, интерпретируемый высокоуровневый язык программирования для быстрого и удобного объектно-ориентированного программирования.
Язык обладает независимой от операционной системы реализацией многопоточности, строгой динамической типизацией, сборщиком мусора и многими другими возможностями. Ruby близок по особенностям синтаксиса к языкам Perl и Eiffel, по объектно-ориентированному подходу – к Smalltalk. Также некоторые черты языка взяты из Python, Lisp, Dylan и CLU.
Кроссплатформенная реализация интерпретатора языка является полностью свободной.
Создатель Ruby – Юкихиро Мацумото (Matz) – интересовался языками программирования, ещё будучи студентом, но идея о разработке нового языка появилась позже. Ruby начал разрабатываться 23 февраля 1993 года и вышел в свет в 1995 году.
Название навеяно языком Perl, многие особенности синтаксиса и семантики из которого заимствованы в Ruby: англ. pearl – “жемчужина”, ruby – “рубин”.
Целью разработки было создание “настоящего объектно-ориентированного”, лёгкого в разработке, интерпретируемого языка программирования.
В Японии Ruby стал популярным с момента появления первой общедоступной версии в 1995 году, однако наличие документации только на японском языке сдерживало его дальнейшее распространение. Лишь в 1997 году появилось описание Ruby на английском языке, а в 1998 году открылся форум “ruby-talk”. Это положило начало росту известности языка в остальном мире. Издано несколько книг на различных языках, в том числе на русском. Сейчас Ruby входит в большинство дистрибутивов операционной системы Linux, поставляется вместе с Mac OS X, доступен пользователям других операционных систем.
Возможности Ruby
Все данные в Ruby являются объектами в понимании Smalltalk. Единственное исключение – управляющие конструкции, которые в Ruby в отличие от Smalltalk не являются объектами. Например, число “1” – это экземпляр класса Fixnum. Также поддерживается добавление методов в класс и даже в конкретный экземпляр во время выполнения программы.
Он работает для всех объектов Ruby, в том числе для внешних библиотек.
Блоки могут использоваться в методах или преобразовываться в замыкания.
Язык использует простые соглашения для обозначения области видимости. Пример: просто var – локальная переменная, @var – переменная экземпляра (член или поле объекта класса), @@var – переменная класса, $var – глобальная переменная.
Он разрабатывался на Linux, но работает на многих версиях UNIX, DOS, Microsoft Windows (в частности, Win32), Mac OS X, BeOS, OS/2 и т. д..
Ссылки
Очень удачно я нашел статью. Подробная статья о перспективных языках и выборе направления в программировании
Рекомендую к прочтению: use-web.ru