После 20 месяцев разработки представлен релиз языка программирования Ruby 1.9.2. Ruby - относительно молодой, мощный и динамический объектно-ориентированный язык программирования, отличающийся высокой эффективностью разработки программ и вобравший в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. По заявлению разработчиков, Ruby 1.9.2 проходит более 99% тестов из набора RubySpec, оценивающего обратную совместимость с прошлой версией языка.

В новой версии представлены следующие основные улучшения:

  • Добавлено более 60 новых методов для классов Array, Complex, Dir, Encoding, Enumerable, Enumerator, Float, File, Hash, IO, Kernel, Integer, Thread, Time и т.п.
  • Представлен новый API для работы с сетевыми сокетами, поддерживающий IPv6;
  • Добавлены новые кодировки, среди которых: Big5, SJIS-*, UTF8-DoCoMo, UTF8-KDDI и UTF8-SoftBank;
  • Реализован новый класс "Random", поддерживающий разнообразные генераторы случайных чисел;
  • Переписан код класса "Time", который теперь не зависит от типа time_t и не подвержен проблеме 2038 года;
  • Расширена поддержка регулярных выражений. В свойствах "\p{}" теперь игнорируются подчеркивания, пробелы и регистр символов, т.е. выражения "\p{ol chiki}" и "\p{Ol_Chiki}" отныне идентичны. В регулярных выражениях теперь обеспечена поддержка Unicode 5.2, но для Unicode следует использовать POSIX-классы символов и семантику "\p{}", под маски "\d", "\s" и "\w" по прежнему подпадают только ASCII-символы;
  • Сохраняемое в переменной "$:" значение более не включает текущую директорию;
  • Система динамического связывания DL, позволяющая организовать выполнение функций, написанных на других языках, переписана и теперь работает поверх библиотеки libffi (Foreign Function Interface).
  • Добавлена новая библиотека Рsych, которая выступает интерфейсом к libyaml и может быть использована вместо Syck для генерации и парсинга данных в формате YAML 1.1.


Источник: http://www.opennet.ru/opennews/art.shtml?num=27660