Последнее шестимесячное обновление для Go было выпущено с более единообразным и модернизированным набором префиксов числовых букв.
Go-это проект с открытым исходным кодом, разработанный командой Google и многими участниками сообщества с открытым исходным кодом на протяжении более 8 лет. Основное предназначение-использование в качестве языка системного программирования, и он был использован в громких коммерческих успехах, таких как Docker.
Наряду с Go 1.13 команда разработчиков Go также объявила о доступности ряда сервисов, управляемых Google, включая зеркало модуля для ускорения загрузки модулей Go, индекс для обнаружения новых модулей и глобальную базу данных go.sum для проверки подлинности содержимого модулей.
Идея, лежащая в основе изменения префиксов числовых литералов, исходит из того факта, что, хотя команда разработчиков Go приняла синтаксис числовых литералов C, когда он был первоначально разработан, он не поспевал за изменениями в «языках с номерами C». Другие языки, такие как C, C++, C#, Java, JavaScript, PHP и Python, расширили свои числовые литералы, добавив некоторые или все двоичные, восьмеричные и шестнадцатеричные целочисленные литералы. Go теперь добавил все это, что, по словам команды разработчиков, должно облегчить разработчикам переход между Go и другими языками с номерами C.
Программисты Go теперь могут указывать литералы, используя следующие префиксы:
Двоичные целочисленные литералы: префикс 0b или 0B указывает на двоичный целочисленный литерал, такой как 0b1011.
Восьмеричные целочисленные литералы: префикс 0o или 0O указывает на восьмеричный целочисленный литерал, такой как 0o660. Существующая восьмеричная нотация, обозначенная начальным 0, за которым следуют восьмеричные цифры, остается в силе.
Шестнадцатеричные литералы с плавающей запятой: префикс 0x или 0X теперь может использоваться для выражения мантиссы числа с плавающей запятой в шестнадцатеричном формате, таком как 0x1.0p-1021. Шестнадцатеричное число с плавающей запятой всегда должно иметь показатель степени, записанный в виде буквы p или P, за которой следует показатель степени в десятичной системе счисления. Экспонента масштабирует мантиссу на 2 в степени экспоненты.
Воображаемые литералы: Воображаемый суффикс i теперь может использоваться с любым (двоичным, десятичным, шестнадцатеричным) целым числом или литералом с плавающей запятой.
Разделители цифр: цифры любого числового литерала теперь могут быть разделены (сгруппированы) с помощью подчеркивания, например, в 1_000_000, 0b_1010_0110 или 3.1415_9265. Подчеркивание может появиться между любыми двумя цифрами или буквенным префиксом и первой цифрой.
Изменения языка были реализованы изменениями в компиляторе и соответствующими внутренними изменениями в библиотечных пакетах.