вторник, 17 августа 2010 г.

Язык Ruby


Вот и закончился мой список десяти самых популярных языков программирования, о которых я говорил в статье про язык Си, вроде – писать уже не о чем? А вот и нет! Языки на этом не закончились, их еще есть очень и очень много, так что эта рубрика (История языков программирования) будет пополняться.
Сегодня вторник, так что предлагаю поговорить о еще каком-нибудь языке программирование. Сейчас нашел список ста самых популярных языков, так что будем продолжать. На очереди у меня – рубиновый язык Ruby.
Язык Ruby (от слова Рубин) – интерпретируемый язык программирования (конечно – высокоуровневый, куда без них сейчас). И конечно – он объектно-ориентированный. Язык Ruby близок к таким языкам, как Python и Perl (но есть и еще некоторые, мене известные). Независимый от платформы интерпретатор Ruby свободный.

Обычно – создателями языков программирования являлись либо европейцы, либо американцы. Но создателем языка Ruby является японский разработчик Юкихиро Мацумото (まつもとゆきひ), чаще всего его называют Matz. У него еще со студенчества появилась любовь к языкам программирования, но язык Ruby он стал разрабатывать начиная с 24 февраля 1993 года. Релиз был через два года – в 1995 году.
Как говорит в своем письме (цитату приводить не буду, просто опишу своими словами) – Matz искал язык, который был бы объектно-ориентированным, интерпретируемым и простым для программирования на нем. Perl и Python были похожи, но удовлетворяли всем условиям, больше похожих языков Matz не нашел. Вот тогда то (24 февраля) ему и пришла идея разработать свой собственный язык, который бы полностью его удовлетворял. Он добавлял туда то, что именно ему хотелось (автоматическую сборку мусора, обработку исключений и тд). Кое что позаимствовал из Perla. В декабре 1995 года Юкихиро Мацумото опубликовал свой Ruby версии 0.95 – и именно с того момента язык Ruby стал набирать популярность.

Кроме вышеприведенных достоинств, у этого языка были и недостатки. Самым главным из них (в то время) являлось то, что документация на язык Ruby была только на японском (язык автора). В Японии Ruby был очень популярным, а вот в другие страны шагал очень осторожно и медленно. Только спустя два года после выхода версии 0.95 – появился перевод документации на английском языке (в 1997 году). Через год появился официальный форум Ruby-Talk – именно это событие можно назвать начало популяризации языка Ruby во всем мире.
Сейчас Ruby включают в большинство дистрибутивов Linux. Про этот язык выпущено множество книг (на разных языках, на русском тоже есть). В общем – язык Ruby сейчас очень популярен, пожалуй надо познакомиться будет с ним поближе.

Matz хотел сделать не быстрый язык программирования, а понятный язык, на котором можно будет разрабатывать программы очень быстро, поэтому – должен быть простой синтаксис. Наверно, это у него получилось.
Язык Ruby полностью объектно-ориентированный, в нем не примитивные типы (как в некоторых других языка программирования) – а объекты. Все функции являются методами. Например, присваивание является не передачей значения – а копированием ссылки на объект. Действительно – полностью объектно-ориентированный язык.

По моим данным – сейчас актуальной версией языка Ruby является 1.9. Но одной из самых популярных – 1.8. Хотя между ними нарушена обратная совместимость – все еще используют версию 1.8. И там и там используется виртуальная машина (под названием YARV (Yet Another Ruby VM). У этого языка есть и недостатки, но они не мешают языку Ruby быть очень популярным сегодня.

3 комментария:

  1. Matz хотел сделать не быстрый язык программирования, а понятный язык, на котором можно будет разрабатывать программы очень быстро, поэтому – должен быть простой синтаксис. Наверно, это у него получилось.

    Можно с этим поспорить. Я насчет понятного синтаксиса.

    А вот возможности языка на самом деле большие. И программировать на нем крайне удобно, но бывают и иные ситуации. Есть маленьий ревью от меня - http://bulaj.ru/?p=416

    ОтветитьУдалить
  2. Счастливые вы люди. А я в программировании дуб дубом :)

    ОтветитьУдалить
  3. Юрий, ты тоже можешь изучать программирование. Сейчас это легко сделать =)

    ОтветитьУдалить