Ruby

Ruby является самым младшим членом рассматриваемого семейства языков, но, тем не менее, быстро набирающим популярность. В основном своей известностью Ruby обязан Ruby on Rails, отличной прикладной инфраструктуре Web, которая была написана на Ruby. Ruby имеет множество черт, роднящих этот язык с Python и общих для Leopard. Оба языка являются объектно-ориентированными, оба они относительно просты в изучении, и оба используют интерактивный интерпретатор, позволяющий экспериментировать с кодом. Правда, в Ruby интерактивный интерпретатор не встроен в язык точно таким же образом, как в Python. Чтобы запустить интерактивный интерпретатор Ruby, следует дать команду irb. Для разработчиков Mac OS X особое значение имеет то, что оба языка скомпилированы как инфраструктуры Cocoa, что делает их доступными как для разработки приложений Cocoa, так и для разработки приложений Darwin. Однако, несмотря на эти сходные черты, Ruby все же значительно отличается от Python как семантически, так и синтаксически.
Поскольку Ruby является более молодым языком, его разработчики сумели избежать многих проблем и недостатков, которые были присущи Perl и Python. В то же самое время им удалось реализовать ряд новых идей, которые еще не были достаточно зрелыми на момент начала разработки Perl и Python. С другой стороны, благодаря своей относительной новизне, Ruby не настолько тщательно протестирован, как Perl или Python, и потому может не обеспечивать такой надежности и безопасности, как эти языки. Например, некоторые программисты считают, что Ruby не так хорошо масштабируется, как Perl или Python.
Примечание
Большинство из слухов о низкой производительности Ruby являются следствием того, что на сегодняшний день еще фактически никто не использовал Ruby в действительно масштабных проектах и серьезно загруженных средах. Как правило, по мере эволюции каждого нового языка он тестируется, и всегда находятся области в которых он просто не справляется с поставленными задачами или демонстрирует низкую производительность. Однако по мере его роста эти проблемы обычно решаются. По всей видимости, Ruby находится как раз на той стадии развития, когда решаются последние проблемы с производительностью. Однако узнать это наверняка невозможно до тех пор, пока кто-нибудь не попытается реализовать на Ruby масштабный проект. На сегодняшний день Python считается одним из наиболее масштабируемых языков командных сценариев. Однако достаточно вспомнить, что он таковым не считался до тех пор, пока разработчики не осознали, какое большое количество задач он может решать, и не начали широко применять его. Достаточно упомянуть, что теперь, когда значительная часть серверов Google работает на Python, вопрос о масштабировании Python попросту снят с повестки дня.
Далее в этой книге мы вернемся к разговору о Ruby и, в частности, обсудим Ruby on Rails, инфраструктуру для web-программирования. Заинтересованным читателям, желающим получить дополнительную информацию о Ruby в целом, рекомендуется прочесть книгу Питера Купера "Beginning Ruby". Если же вам нужна детальная информация об особенностях разработки приложений Cocoa на Ruby Cocoa, то она включена в документацию по Xcode Tools, найти которую можно в папке /De\doper/ Documentation/RubyCocoa/.