Support us

Google выпустила в релиз язык программирования Go 1.7

7 комментариев
Google выпустила в релиз язык программирования Go 1.7

После шести месяцев разработки компания Google выпустила в релиз версию 1.7 языка программирования Go, который позиционируется как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок, сообщает Opennet.

Читать далее

Талисман языка программирования Go. Иллюстрация: techrepublic.com

Синтаксис Go основан на привычных элементах языка C с отдельными заимствованиями из Python. Язык достаточно лаконичен, но при этом код легко читается и воспринимается.

Код на языке Go компилируется в обособленные бинарные исполняемые файлы, выполняемые нативно без использования виртуальной машины (модули профилирования, отладки и другие подсистемы выявления проблем на этапе выполнения интегрируются в виде runtime-компонентов), что позволяет добиться производительности, сопоставимой с программами на C.

Проект изначально разрабатывается с оглядкой на многопоточное программирование и эффективную работу на многоядерных системах, в том числе предоставляя реализованные на уровне операторов средства для организации параллельных вычислений и взаимодействия между параллельно выполняемыми методами. Язык также предоставляет встроенные средства защиты от выхода за допустимые области выделенных блоков памяти и обеспечивает возможность использования сборщика мусора.

Основные новшества, представленные в выпуске Go 1.7:

  • Новый бэкенд компилятора, использующий промежуточный код на базе SSA (Static Single Assignment). SSA предоставляет низкоуровневые операции, которые во многом отражают обычные машинные инструкции, за исключением того, что предоставляют возможность работы с неограниченным числом регистров. Применение SSA позволяет задействовать при сборке дополнительные классы оптимизаций и, соответственно, добиться увеличения производительности результирующего кода. Например, появляется возможность выявить ситуации в которых проверки выхода за границы не имеют смысла или можно исключить части выражений. В среднем прирост производительности оценивается в 5-35%. Для разработчиков бэкенд на базе SSA предоставляет ряд расширенных средств аналитики, позволяющих на низком уровне проанализировать ход компиляции и принятые решения по оптимизации. Новый бэкенд пока доступен только для архитектуры amd64;
     
  • Во фронтэнде компилятора задействован новый более компактный формат экспорта данных и обеспечен более эффективный импорт определений. Данные изменения позволили значительно ускорить компиляцию и на 20-30% сократить размер исполняемых файлов;
     
  • Внесены оптимизации в сборщик мусора, которые позволили немного увеличить производительность и значительно сократили паузы при сборке мусора в программах с большим числом неактивных потоков (goroutines);
     
  • Внесены оптимизации в различные модули стандартной библиотеки. Например, ускорение более чем на 10% отмечено в библиотеках crypto/sha1, crypto/sha256, encoding/binary, fmt, hash/adler32, hash/crc32, hash/crc64, image/color, math/big, strconv, strings, unicode и unicode/utf16;
     
  • Реализован порт для Linux на IBM z Systems (s390x);
     
  • В состав стандартной библиотеки включён пакет golang.org/x/net/context, популярный среди разработчиков сетевых приложений и микросервисов. Начиная с Go 1.7 данная библиотека доступна под именем context без префикса "/x/net/". Поддержка модуля context добавлена в штатные пакеты net/http и os/exec;
     
  • Директория vendor, предназначенная для поставки внешних зависимостей, привязанных к определённому поставщику, переведена в разряд неотключаемых возможностей.


Код проекта распространяется по лицензии BSD.

Читайте также
Google открыла Play Store для вайб-кодеров — достаточно обычного аккаунта
Google открыла Play Store для вайб-кодеров — достаточно обычного аккаунта
Google открыла Play Store для вайб-кодеров — достаточно обычного аккаунта
Google выпустила Gemini 4 Argon — мощнее GPT-6 Astra и в 5 раз дешевле
Google выпустила Gemini 4 Argon — мощнее GPT-6 Astra и в 5 раз дешевле
Google выпустила Gemini 4 Argon — мощнее GPT-6 Astra и в 5 раз дешевле
4 комментария
Google представила Gemini agent для работы — конкурента Claude Cowork и ChatGPT Work
Google представила Gemini agent для работы — конкурента Claude Cowork и ChatGPT Work
Google представила Gemini agent для работы — конкурента Claude Cowork и ChatGPT Work
Google открыла всем сервис для проверки контента на ИИ
Google открыла всем сервис для проверки контента на ИИ
Google открыла всем сервис для проверки контента на ИИ

Хотите сообщить важную новость? Свяжитесь с редакцией через страницу контактов

Главные события и полезные ссылки в нашем Telegram-канале

Абмеркаванне
Каментуйце без абмежаванняў

Рэлацыраваліся? Цяпер вы можаце каментаваць без верыфікацыі акаўнта.

Каментарыяў пакуль няма.