В новой версии Ruby переписан JIT-компилятор, повышающий скорость выполнения кода.
Команда разработчиков Для просмотра ссылки Войдиили Зарегистрируйся выход крупного обновления Для просмотра ссылки Войди или Зарегистрируйся - новой основной версии популярного языка программирования, ориентированного на быструю разработку веб-приложений и сервисов. Данный релиз принёс целый ряд нововведений, направленных на повышение производительности интерпретатора CRuby и расширение функциональных возможностей языка.
Несколько важных Для просмотра ссылки Войдиили Зарегистрируйся :
или Зарегистрируйся под лицензиями BSD ("2-clause BSDL") и "Ruby", которая ссылается на последний вариант лицензии GPL и полностью совместима с GPLv3.
Команда разработчиков Для просмотра ссылки Войди
Несколько важных Для просмотра ссылки Войди
- Парсер Для просмотра ссылки Войди
или Зарегистрируйся : Ruby 3.3.0 включает в себя парсер Prism, Для просмотра ссылки Войдиили Зарегистрируйся в форме Си-библиотеки libprism и gem-пакета на языке Ruby. Этот парсер задействован в интерпретаторе CRuby и предоставляет общедоступное API для разбора кода на Ruby, что делает его полезным для рабочих проектов. Prism отличается хорошей переносимостью и гибкой обработкой ошибок в коде. - Проект Lrama: Для генерации парсеров в Ruby 3.3.0 используется проект Для просмотра ссылки Войди
или Зарегистрируйся . Этот проект предоставляет реализацию алгоритма LALR на Ruby и поддерживает определения грамматик, используемые в CRuby. Он также предоставляет расширенные возможности, такие как обработка ошибок и параметризированные правила. - Улучшение JIT-компилятора YJIT: JIT-компилятор Для просмотра ссылки Войди
или Зарегистрируйся был значительно оптимизирован в этой версии Ruby. YJIT разрабатывается командой Shopify для увеличения производительности Ruby-программ, использующих фреймворк Rails и выполняющих много методов. Новый YJIT применяет версионирование базовых блоков (LBBV - Lazy Basic Block Versioning) вместо обработки методов целиком и написан на Rust. Это значительно улучшило производительность Ruby-приложений. - Новый JIT-компилятор RJIT: Ruby 3.3.0 вводит новый JIT-компилятор под названием RJIT. Он полностью написан на Ruby и заменяет ранее использованный MJIT. RJIT поддерживает только архитектуру x86-64 и Unix-подобные платформы, и он не требует компиляции на C.
- Планировщик потоков "M:N": Эта версия Ruby включает планировщик потоков "M:N", который позволяет эффективно использовать ограниченное количество потоков операционной системы для обработки потоков в коде на Ruby. Это может уменьшить накладные расходы на создание и управление потоками. По умолчанию используется 8 потоков операционной системы.
- Улучшения в оболочке IRB: Оболочка интерактивных вычислений IRB (REPL) получила несколько улучшений, включая режим отладки, поддержку многостраничного просмотра вывода команд, а также экспериментальную поддержку автоматического дополнения ввода.
- Другие изменения: В Ruby 3.3.0 объявлено устаревшим использование метода "it" без аргументов в блоке без параметров. Также добавлено предупреждение при указании определенных gem-пакетов в "require", если они не добавлены в Gemfile или gemspec.
- Источник новости
- www.securitylab.ru