Описание тега ruby-2.0

По вопросам, связанным с разработкой на Ruby версии 2.0. Если ваш вопрос относится к Ruby в целом, используйте тег [ruby].

Ruby - это динамический язык программирования с открытым исходным кодом, ориентированный на простоту и производительность. Ruby 2.0 был выпущен 24 февраля 2013 года.

Для получения общей информации о Ruby посетите ruby. И документация по API для Ruby 2.0.0.

Официальный анонс версии 2.0 представлены изменения, как:

  • Основные особенности языка
    • Аргументы ключевых слов, которые придают гибкость дизайну API
    • Модуль #prepend - новый способ расширения класса
    • Литерал%i, который легко создает массив символов
    • __dir__, который возвращает имя каталога исполняемого файла
    • Кодировка по умолчанию UTF-8, которая делает многие волшебные комментарии пропускаемыми
  • Встроенные библиотеки
    • Enumerable#lazy и Enumerator::Lazy для (возможно бесконечного) ленивого потока
    • Enumerator#size и Range#size, для отложенного вычисления размера
    • #to_h, новое соглашение для преобразования в хэш
    • Onigmo, новый движок регулярных выражений (форк Oniguruma)
    • API асинхронной обработки исключений
  • Поддержка отладки
    • Поддержка DTrace, которая позволяет производить диагностику во время выполнения.
    • TracePoint- улучшенный API трассировки
  • Улучшения производительности
    • Оптимизация сборщика мусора по разметке растрового изображения
    • Ядро # требует оптимизации, что делает запуск Rails очень быстрым
    • Оптимизация виртуальной машины, такая как отправка методов
    • Оптимизация работы с плавающей запятой

Кроме того, хотя и в качестве экспериментальной функции, 2.0.0 включает уточнения, которые добавляют новую концепцию модульности Ruby.