Язык Ruby

ruby логотип

Идеалы создателя языка Ruby

Ruby - это язык тщательного баланса. Его создатель, Юкихиро «Мац» Мацумото, соединил части своих любимых языков (Perl, Smalltalk, Eiffel, Ada и Lisp), чтобы создать новый язык, который сбалансирует функциональное программирование с императивным.

Он часто говорил, что пытается сделать Ruby естественным, а не простым, таким, чтобы он отражал жизнь.

О росте популярности Ruby

С момента своего выхода в 1995 году Ruby привлек внимание преданных кодеров по всему миру. В 2006 году Ruby достиг массового признания. В крупнейших городах мира появились активные группы пользователей, а конференции, посвященные Ruby, заполнились до отказа.

Ruby-Talk, основной список рассылки для обсуждения языка Ruby, в 2006 году вырос до 200 сообщений в день. В последние годы этот показатель снизился, так как в связи с ростом численности сообщества дискуссии переместились из одного центрального списка в множество более мелких групп.

Ruby входит в первую десятку большинства индексов, оценивающих рост и популярность языков программирования в мире (например, индекс TIOBE). Во многом этот рост объясняется популярностью программного обеспечения, написанного на Ruby, в частности веб-фреймворка Ruby on Rails.

Кроме того, Ruby совершенно бесплатен. Не только бесплатен, но и свободен для использования, копирования, модификации и распространения.

Восприятие всего как объекта

Вначале Мац рассматривал другие языки в поисках идеального синтаксиса. Вспоминая свои поиски, он говорит: Мне нужен был скриптовый язык, более мощный, чем Perl, и более объектно-ориентированный, чем Python2.

В Ruby все является объектом. Каждый бит информации и кода может быть наделен собственными свойствами и действиями. В объектно-ориентированном программировании свойства называются переменными экземпляра, а действия - методами. Чисто объектно-ориентированный подход в Ruby чаще всего демонстрируется на примере кода, который применяет действие к числу.

5.times { print "We *love* Ruby -- it's outrageous!" }

Во многих языках числа и другие примитивные типы не являются объектами. Ruby следует влиянию языка Smalltalk, предоставляя методы и переменные экземпляра всем своим типам. Это облегчает работу с Ruby, так как правила, применяемые к объектам, распространяются на весь Ruby.

Пример кода

# Ruby knows what you
# mean, even if you
# want to do math on
# an entire Array
cities  = %w[ London
              Oslo
              Paris
              Amsterdam
              Berlin ]
visited = %w[Berlin Oslo]

puts "I still need " +
     "to visit the " +
     "following cities:",
     cities - visited

Источники