Разработчики языка программирования Ruby выпустили обновление. В версии 3.4.0 добавили новый идентификатор it
, по умолчанию активировали парсер Prism, включили очередные оптимизации JIT-компилятора YJIT и внедрили другие улучшения.
Что нового в Ruby 3.4.0:
-
Идентификатор it. Появился идентификатор
it
, который упрощает работу с неименованными параметрами в коде. Его предлагают использовать вместо переменной_1
, чтобы больше не возникало путаницы. Например,it
показывает, что в блоке кода есть только один аргумент, а при использовании_1
не понятно, есть ли параметр_2
.
ary = ["foo", "bar", "baz"] p ary.map { it.upcase } #=> ["FOO", "BAR", "BAZ"]
-
Парсер Prism. Теперь в Ruby по умолчанию используется парсер Prism. Он проще в использовании и с его помощью можно обрабатывать ошибки в коде. С помощью метода
Prism.parse(source)
можно получить AST-представление кода,Prism.parse_success?(source)
— проверить код на наличие ошибок,Prism.parse_comments(source)
— выделить комментарии из кода. Если нужно вернуть старый парсер parse.y, то следует использовать опцию--parser=parse.y
. -
Оптимизация YJIT. Разработчики продолжают оптимизировать JIT-компилятор YJIT, который развивают инженеры компании Shopify. В отличие от старого компилятора MJIT, в новом YJIT реализовали метод LBBV (Lazy Basic Block Versioning). Он компилирует код частями. Тесты на системах x86_64 и ARM64 показывают, что компилятор YJIT оказывается быстрее.
-
Обновление библиотеки socket. В библиотеке socket теперь по умолчанию работает алгоритм Happy Eyeballs. При подключении к хостам он автоматически выбирает оптимальный протокол.
ссылка на оригинал статьи https://habr.com/ru/articles/870828/
Добавить комментарий