• slide aida64
  • slide microsft
  • slide warframe2
  • Что такое UEFI
  • С Днем Программиста 2012
  • Заправка МФУ :)
  • Изменения правил для приложений в Google Play
  • На сайте открыт магазин
  • Динамическая толщина бумаги
  • Драйвера Nvidia 296.10
  • У iPhone больше уязвимостей, чем у всех остальных.
  • Сравнение графики PC и PS4 на новом движке Unreal Engine 4
  • Lineage OS не будет предоставлять пользователям root-права
  • Microsoft Windows 8.1 Preview доступен для бесплатного скачивания
  • Автозагрузка в Windows 10
  • Уникальный игровой сервис OnLive
  • Принтер с бонусом внутри :)
  • Game Commander
  • В сеть просочилась предположительно финальная версия Windows 10
  • online эмулятор Windows 1.01
  • Скрипт установки принтеров Canon LBP на Linux Ubuntu (обновлено)
  • Сюжетный трейлер Mortal Kombat X
  • Бесплатные звонки с VIBER
  • Неожиданный предмет внутри коробки с монитором AOC F22+
  • Sandboxie. Работаем в
  • Завершение процессов на удаленном компьютере Windows
  • 5 неудачных антипиратских решений
  • Ролик про Крым
  • Dj Tro - Just a fool [2011]
  • Microsoft предлагает заменить маму смартфоном
мая14

Вышел новый релиз языка программирования Go 1.1

Троцкий Юрий

Вышел новый релиз языка программирования Go 1.1

После более года разработки представлен второй значительный релиз развиваемого компанией Google языка программирования.

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

     В новом выпуске основные усилия были направлены на оптимизацию производительности, что позволило достигнуть значительного увеличения производительности приложений на языке Go. Заметного ускорения работы существующих программ можно добиться просто пересобрав их с использованием нового выпуска компилятора Go. На уровне API и семантики языка версия Go 1.1 полностью обратно совместима с веткой 1.0.

     Оптимизации внесены практически во все подсистемы - в компилятор, систему динамического связывания, сборщик мусора, планировщик процедур и библиотечные функции. Расширено число доступных функций в стандартной библиотеке. Представлен новый механизм выявления эффекта гонки (race detector), позволяющий определить наличие ошибок, связанных с синхронизацией доступа к памяти. Ошибки деления целых чисел на ноль теперь выявляются на этапе компиляции. Добавлена защита от использования некорректных комбинаций Unicode.

     В сам язык внесены в основном незначительные изменения, например, изменены требования к использованию оператора return для завершения работы функций (гарантируется, что единовременно не будет выполняться несколько экземпляров функции). Также добавлен новый метод значений (method values), позволяющий осуществить привязку функции к определённому принимаемому значению.

     Среди других изменений, добавлена экспериментальная поддержка новых платформ: freebsd/arm, netbsd/386, netbsd/amd64, netbsd/arm, openbsd/386 и openbsd/amd64. В состав включены новые пакеты: go/format с более удобной реализацией функций форматирования; net/http/cookiejar для манипуляций c HTTP Cookies; runtime/race для выявления эффекта гонки на стадии выполнения программы.

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

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

Пример кода.Выводит на экран слова "Hello, World!"

package main

import "fmt"

func main() {
fmt.Println("Hello, World!")

     Ознакомиться подробнее с новым проектом от Google можно здесь.

 Источник:    http://www.opennet.ru 

Оставить комментарий

Пожалуйста, войдите, чтобы комментировать.