Новости и события » Hi-Tech » Выпуск языка программирования Ruby 2.4.0

Выпуск языка программирования Ruby 2.4.0

Представлен релиз Ruby 2.4, динамического объектно-ориентированного языка программирования, отличающегося высокой эффективностью разработки программ и вобравшего в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp. Код проекта распространяется под лицензиями BSD ("2-clause BSDL") и "Ruby", которая ссылается на последний вариант лицензии GPL и полностью совместима с GPLv3. Ruby 2.4 является четвертым значительным выпуском, подготовленным в рамках нового планового процесса разработки, подразумевающего отведение года на подготовку функциональных улучшений и формирование каждые 2-3 месяца корректирующих выпусков.

  • Переработана реализация хэш-таблиц (st_table), внесены улучшения связанные с переходом на использование открытой адресации для борьбы с коллизиями и применением упорядоченных массивов вместо списков с двойным связыванием. В среднем новая реализация обеспечивает 50% ускорения работы с хэшами;
  • Добавлена возможность binding.irb для запуска REPL-сеансов по аналогии с binding.pry;
  • Типы Fixnum и Bignum преобразованы в универсальный тип Integer. Все Си-расширения, из которых выполняется обращение к классам Fixnum и Bignum, должны быть переработаны;
  • В строковых операциях String/Symbolupcase/downcase/swapcase/capitalize реализована поддержка маппинга строчных/прописных символов для Unicode (ранее подобный маппинг был доступен только для ASCII-символов);
  • Внесена серия оптимизаций производительности. В частности, ускорена работа "Arraymax" и "Arraymin", реализации "[x, y].max" и "[x, y].min" избавлены от создания временных массивов для некоторых ситуаций, добавлена операция "Regexpmatch?" позволяющая обработать регулярное выражение без создания объекта с обратными ссылками, ускорены операции доступа к экземплярам переменных;
  • Добавлены отладочные вызовы "Threadreport_on_exception" и "Thread.report_on_exception" позволяющие отследить исключения при завершении потоков или выполнении операций сборки мусора. Расширены механизмы обнаружения взаимных блокировок в потоках, при выявлении которых обеспечен вывод обратных трассировок и списка зависимых потоков;
  • Добавлена поддержка OpenSSL 1.1.0. Прекращена поддержка OpenSSL 0.9.7 и более ранних выпусков;
  • Из stdlib удалены компоненты ext/tk и XMLRPC.

Що треба знати, щоб почати працювати SMM-менеджером з нуля?

Що треба знати, щоб почати працювати SMM-менеджером з нуля?

Про професію SMM-спеціаліста говорять всі. Одні кажуть, що це людина, яка поститить меми, інші - спеціаліст, який просто веде соцмережі. Але хто насправді такий SMM-спеціаліст і що треба знати, щоб почати ним працювати? Про це розповіли далі. Що таке SMM і...

сегодня 12:13

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх