Вышла новая версия языка программирования Ruby 3.0
Выход новой версии языка программирования Ruby 3.0 объявила команда разработчиков 25 декабря на сайте проекта.
Как утверждают программисты, работавшие над новой версией языка, им удалось добиться значительного увеличения скорости работы приложений. Это стало возможным благодаря развитию поддержки JIT-компиляции.
Пока увеличение скорости наблюдается при определенных вариантах нагрузки, таких как игры (тест Optcarrot), приложения искусственного интеллекта (тест Rubykon) и любые приложения, которые тратят наибольшую часть времени на многократный вызов нескольких методов. Однако пока не удалось достичь роста производительности в приложениях, использующих фреймворк Rails.
Планируется, что работа с Rails будет оптимизирована в версии 3.1. В версии 3.0 появился инструментарий для аннотации типов при описании структуры программы с помощью языка RBS.
Появилась экспериментальная поддержка модели акторов Ractor, которые можно запускать параллельно друг другу. В процессе действия акторы могу обмениваться между собой сообщениями.
Добавлен планировщик легковесных fiber-потоков Fiber#scheduler, поддерживающий перехват блокирующих операций для обеспечения легкого параллелизма, не требующего изменения существующего кода. Обновлены gem-модули, входящие в стандартную библиотеку языка — stdlib.
Из базового набора исключены модули sdbm, webrick, net-telnet и xmlrpc. В основной состав включены модули rexml и rss.
Напомним, Ruby — это динамический объектно-ориентированный язык программирования. Он обладает независимой от операционной системы реализацией многопоточности, сильной динамической типизацией, сборщиком мусора и многими другими возможностями.
По особенностям синтаксиса он близок к языкам Perl и Eiffel, по объектно-ориентированному подходу — к Smalltalk. Также некоторые черты языка взяты из Python, Lisp, Dylan и Клу.