• slide aida64
  • slide microsft
  • slide warframe2
  • Основные команды в Linux
  • SDI - все драйвера в одном пакете
  • Мой плановый выходной
  • Новое на сайте tro.net.ua
  • Свет увидел ролик грядущего DOOM4
  • Adobe Creative Suite 6
  • Использование LiveCD для восстановления пароля суперпользователя root в Linux
  • NVIDIA представила технологию симуляции и рендеринга реалистичной травы - TurfEffects
  • День компьютерщика
  • C Днем Системного Администратора !
  • Создание загрузочной Windows USB-флешки
  • Ошибка 0x8000000000000002. Решение.
  • Новый Adobe Photoshop CC взломан через день после релиза
  • Релиз KDE 4.8
  • Драйвера Nvidia 296.10
  • Как отключить легкую установку (easy install) в VMWare Workstation
  • Иван Царевич,DjTro - Сталь манит кровь
  • Что такое UEFI
  • У iPhone больше уязвимостей, чем у всех остальных.
  • Увеличение размера виртуального и системного диска в Windows Server без остановки VMWare
  • Автоматический вход в Windows без ввода пароля
  • Вышло одно из самых ожидаемых дополнений к Mortal Kombat X
  • Динамическая толщина бумаги
  • Warframe. Или как закалялась сталь.
  • Первое впечатление о Windows 8 Beta
  • Сюжетный трейлер Mortal Kombat X
  • Свич или магнитофон ?
мая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 

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

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