• slide aida64
  • slide microsft
  • slide warframe2
  • Увеличение размера виртуального и системного диска в Windows Server без остановки VMWare
  • Решение ошибки Windows Server 2008 R2
  • Сравнение графики PC и PS4 на новом движке Unreal Engine 4
  • Прошивка MAC-адресса в интегрированной сетевой карте
  • С Днем системного администратора !!!
  • Тест производительности сервера DELL PowerEdge R210 II
  • Pinnacle и телепатический модуль
  • Свич или магнитофон ?
  • Создание своего Ubuntu Live CD
  • OneWeb - глобальный проект интернет доступа
  • Релиз KDE 4.8
  • Серверные процессоры нового поколения Intel Xeon E7 v2
  • Одна из первых реклам Microsoft
  • Как качать с торрента
  • Как загрузить Windows 8.1 в безопасном режиме
  • Новый Adobe Photoshop CC взломан через день после релиза
  • Как обойти экран блокировки в iOS
  • С Днем Программиста 2017
  • Как обжимать витую пару (8P8C)
  • День системного администратора
  • Зачем на самом деле нужны встроенные игры в Windows
  • Обзор игры EVE Online
  • Новый Unreal Tournament 4 будет распространяться бесплатно
  • Sandboxie. Работаем в
  • Мягкий жесткий диск
  • Впечатляющая демонстрация Epic Unreal Engine 4
  • На сайте открыт магазин
мая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 

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

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