TypeScript 5.5 стал общедоступным
В TypeScript 5.5 появились предикаты инференции типов, проверка синтаксиса регулярных выражений, оптимизация производительности и поддержка методов ECMAScript Set.
Вышла версия NumPy 2.0, первая крупная новая версия с 2006 года. NumPy - это фундаментальная математическая библиотека для Python, и в этом выпуске добавлены новые функции и улучшения производительности, а также внесены изменения.
Библиотека NumPy расширяет возможности Python, добавляя поддержку больших многомерных массивов и различных производных объектов, таких как маскированные массивы и матрицы. Их можно анализировать и работать с ними, используя обширный набор математических функций высокого уровня NumPy.
NumPy содержит набор процедур для быстрых операций с массивами, включая математические, логические, манипуляции с формами, сортировку, выборку, ввод-вывод, дискретные преобразования Фурье, основы линейной алгебры, базовые статистические операции и моделирование случайных чисел. В нем есть инструменты для интеграции кода на C/C++ и Fortran, а также полезные возможности линейной алгебры, преобразования Фурье и случайных чисел.
Анонсируя новый выпуск, разработчики сообщили в блоге:
"NumPy совершенствовался и развивался на протяжении последних 18 лет, и многие старые релизы принесли значительные улучшения производительности, удобства использования и согласованности. При этом наш подход долгое время заключался в том, чтобы вносить только инкрементные изменения, тщательно контролируя обратную совместимость. Такой подход сводит к минимуму поломки пользователей, но также ограничивает объем улучшений, которые можно внести как в API, так и в его базовую реализацию."
В связи с этим команда решила нарушить обратную совместимость, чтобы реализовать значительные улучшения в системе типов NumPy. По словам разработчиков, поскольку система типов является основополагающей для NumPy, серьезные изменения в поведении не могут быть внесены постепенно, без смешивания двух различных систем типов, что стало бы залогом катастрофы.
Улучшения в новом выпуске начинаются с переработки API Python, чтобы очистить и упростить его. По словам разработчиков, это должно облегчить изучение и использование NumPy. Основное пространство имен было сокращено примерно на 10 %, а более нишевое пространство имен numpy.lib - примерно на 80 %, обеспечивая более четкое разграничение между публичными и приватными элементами API.
Также улучшены правила продвижения скаляров, что позволило устранить "неожиданное поведение" при продвижении типов, например, при работе с массивами нулевой размерности.
Добавлен новый API DType, а также новый строковый dtype. Новый API может быть использован для реализации пользовательских типов данных, и разработчики использовали его для реализации StringDType, предлагая, по их словам, эффективную и безболезненную поддержку строк переменной длины. Они надеются, что в будущем это позволит создать новые типы данных с новыми интересными возможностями в экосистеме PyData и в самом NumPy.
Были внесены улучшения в совместимость с Windows, так что 32-битное представление целых чисел по умолчанию в Windows было обновлено до 64-битного на 64-битных архитектурах, что решает одну из самых распространенных проблем с переносимостью NumPy между операционными системами.
Также появилась поддержка стандарта Python array API, а существующие API и поведение были приведены в соответствие со стандартом.
NumPy 2 доступен уже сейчас.
В TypeScript 5.5 появились предикаты инференции типов, проверка синтаксиса регулярных выражений, оптимизация производительности и поддержка методов ECMAScript Set.
В июльском выпуске Android Jetpack Compose появились некоторые улучшения, он стал быстрее, но то ли это, что мы хотим?
Если вы хотите писать на Python код, использующий самые новые и мощные возможности языка, вот четыре области, которые стоит изучить.
Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!
Только свежие новости программирования и технологий каждый день.
Комментарии