LINUX.ORG.RU

Вышел Go 1.2

 


2

5

Через семь месяцев после Go 1.1, 1 декабря 2013 вышла стабильная версия Go 1.2.

Go 1.2 содержит незначительные изменения языка и некоторое количество улучшений в реализации компилятора и инструментов, несколько моментов улучшения производительности, много дополнений и (обратно-совместимых) изменений в стандартной библиотеке. С полным списком изменений можно ознакомиться по ссылке. Коротко об изменениях:

  • Новый трех-индексный синтаксис слайсов добавляет возможность указывать вместимость.
  • Новый фукционал go test, cover, касающиеся вычисления и отображения результатов покрытия тестами кода.
  • Использование диспетчером вытесняющую многозадачность для выполнение горутин и может быть время от времени вызван при входе горутины в функцию.
  • Увеличение размера стека по умолчанию для горутин должно улучшить производительность некоторых программ.
  • Новые функции из пакета runtime/debug.
  • Изменений в стандартной библиотеке: новый пакет encoding, индексные аргументы в строках формата для функций Printf, и некоторые удобные дополнения к пакету template.

В рамках релиза, Go Playground была обновлена до Go 1.2. Это также затрагивает и сервисы, которые используют Playground, такие как Go Tour и блог. Обновления также добавляют возможность использовать в песочнице потоки и пакеты os, net и unsafe, делая ее более похожей на реальное окружение Go.

>>> Подробности

★★

Проверено: mono ()
Последнее исправление: CYB3R (всего исправлений: 5)

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

Хабрапаста даже с ошибками :(

fraxinum
()

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

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

Laz ★★★★★
()

Современное велосипедостроение уныло.

asaw ★★★★★
()
Ответ на: комментарий от Bad_ptr

батхерт питониста, ожидающего выхода rust'a.

Хм. И мой баттхерт вызван... чем именно? Переходом хипстеров с Руби на Гоу? %)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

И мой баттхерт вызван... чем именно?

Видимо появлением новости о Гоу на главной, ну и тем, что Руби круче Питона(короче, тут ещё синдром утёнка и всё такое).

Bad_ptr ★★★★★
()
Последнее исправление: Bad_ptr (всего исправлений: 1)

Жизненный цикл любой новости о ЯП на ЛОРе.

  • Публикуется новость о языке программирования;
  • (1 стр.) Набегают анонимусы, охотники за шкворцом, неосиляторы и просто мимокрокодилы с криками «нинужно», «а зачем X, когда есть Y», «чем это лучше Z» и т.п.;
  • (2-4 стр.) Просыпаются компетентные в теме ЛОРовцы и обсуждают тему;­
  • (5-10 стр.) Набегают ёбн­­у­тые лиспофанбои и скатывают тему в лиспосрач;
  • (10-15 стр.) Лиспофаги озалуплены, общими усилиями адекватных регистрантов и анонимусов;
  • (15- стр.) Просыпается quasimoto и начинает обсуждать сам с собой монады, коммутативные диаграммы, стрелки, 2-стрелки, 3-стрелки, декартово замкнутые категории, аппликативные функторы, анаморфизмы, катаморфизмы, эпиморфизмы, параморфизмы, моноиды, полугруппы, когомологии и топосы Гротендика.
anonymous
()
Ответ на: комментарий от Bad_ptr

Видимо появлением новости о Гоу на главной

Не, тут фейл. Я вообще на главную не хожу.

Руби круче Питона(короче, тут ещё синдром утёнка и всё такое).

Вообще-то я познакомился с Руби раньше, чем с Питоном %)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Не, тут фейл. Я вообще на главную не хожу.

значит появлением надписи, содержащей буквосочетание Go в трекере.

Вообще-то я познакомился с Руби раньше, чем с Питоном %)

ну да, не верю — это раз. Ну может быть тогда руби был ещё не круче питона, а теперь только стал (но ты уже не можешь это признать) — это два.

Bad_ptr ★★★★★
()
Последнее исправление: Bad_ptr (всего исправлений: 1)
Ответ на: комментарий от home_user

многопоточных приложений

'конкурентных'

Удобное и простое

без параметрического полиморфизма не катит

Bad_ptr ★★★★★
()
Последнее исправление: Bad_ptr (всего исправлений: 1)
Ответ на: комментарий от home_user

Удобное и простое написание многопоточных приложений </thread>

Для этого умные люди много лет назад яву с дотнетом придумали. Не катит.

Nagwal ★★★★
()
Ответ на: комментарий от Nagwal

Для этого умные люди много лет назад яву

много лет назад её придумал для кофеварок, ушибленный головой дядя.

дотнетом

а это придумали для того чтобы была своя проприетарная жаба, с блэкджеком.

так что придумали их совсем не для

Удобное и простое написание многопоточных приложений

Bad_ptr ★★★★★
()
Ответ на: комментарий от punya

та эта цитата итак в каждой новости о языках программирования появляется. Анонимус-бот старается.

Bad_ptr ★★★★★
()
Ответ на: комментарий от loz

Вообще-то во всех нормальных языках, и не только нормальных. Scala, F#, C#, (надо думать есть и в Visual Basic), D, Ada, FreePascal, всё семейство ML, Haskell, не говоря уже про зависимо типизированные языки.

И, надо отметить, что в С++ нет обобщённых типов, есть только макросистема (шаблоны), которая позволяет имитировать их.

Begemoth ★★★★★
()
Последнее исправление: Begemoth (всего исправлений: 3)
Ответ на: комментарий от loz

А они есть где-то кроме как в джаве и плюсах?

Да.

encyrtid ★★★★★
()

quasimoto, как, по-Вашему, система типов языка Go описывается в категориальной семантике? Спасибо!

anonymous
()
Ответ на: комментарий от Bad_ptr

в Cишке-то нет

значит, сишка-то - не нормальный язык.

Begemoth ★★★★★
()
Ответ на: комментарий от Begemoth

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

loz ★★★★★
()
Ответ на: комментарий от Bad_ptr

много лет назад её придумал для кофеварок, ушибленный головой дядя.

А потом другие дяди поняли, что на ней удобно и просто писать не только под кофеварки, но и под все остальное. Многопоточные приложения.

а это придумали для того чтобы была своя проприетарная жаба, с блэкджеком.

На которой от этого не менее удобно писать многопоточные приложения. Правда под винду в основном. Но удобно.

Nagwal ★★★★
()

Представил вход горутины в функцию. Теперь пол ночи заснуть не смогу.

anonymoos ★★★★★
()

Видел тред на одной странице

А кто-нибудь из ЛОРовцев использует сабж не «на посмотреть», а в реальных проектах? Интересно узнать, что называется «из первых уст», какова область применения, на что похоже/не похоже, сравнить с C++/Java/чем-то еще. Кто пользуется сабжем, расскажите, пожалуйста.

И да, видел тред на одной странице.

AlexGret
()
Последнее исправление: AlexGret (всего исправлений: 1)
Ответ на: комментарий от Bad_ptr

Во-первых язык ничего революционного не привнёс

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

cab ★★★★
()
Последнее исправление: cab (всего исправлений: 1)
Ответ на: Видел тред на одной странице от AlexGret

Тут многое зависит от сферы применения. Мы в Ленте его пробовали для чатика, побаловаться. Сравнивали с ruby/nodejs по удобству. Для этой задачи инструменты были, они и есть, использовать можно. Результаты ожидаемы: реализация простая, кода не так и много, жрёт мало, работает быстро.

Сервис сбора статистики:

  • сборщик запросов запустил одним процессом и пуляй в редис после валидации.
  • разгребать очередь. Наплодил контролируемое число гороутин, и они шуршат. Тут работа с postgresql, вполне себе посильная задача, но конечно уступает тем же RoR в плане быстрой разработки.

То, что генерируется один бинарник, следить надо за одним процессом, это положительный момент.

Следующий рубеж – написать какого-то сервиса RESTful JSON API. Есть какие-то фреймворки, но пока восторга не вызывают.

Использовать для специализированных сервисов уже можно. Полностью веб платформа – рановато.

kavkaz
()

«Скрипач не нужен.» (с) «Кин-дза-дза»

Очередное маргинальное поделие типа руби, педона, окамла, хацкеля и еже с ними.

Bioreactor ★★★★★
()
Ответ на: комментарий от tailgunner

как раз эта игрушка актуальна.

один бинарник (кинул и работает), быстрая компиляция (ява и с/с++ отдыхают), скорость работы on par with java (притом что памяти жрет намного меньше), хорошие го-рутины.

Современно, актуально, необходимо. Golang это неизбежность.

umren ★★★★★
()
Последнее исправление: umren (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Переходом хипстеров с Руби на Гоу?

Хипстеры с Руби переходят чаще на Scala.
У Go с Ruby общего мало, очень мало.

а на Go переходят в основном другие категории «Граждан».

umren ★★★★★
()
Ответ на: комментарий от umren

Хипстеры с Руби переходят чаще на Scala.

Да как сказать... и Пайк в блоге жаловался на то, что переходят с Руби/Ноджс, и здесь см. выше.

Golang это неизбежность.

Ну, если вспомнить, что стандартами де-факто становятся самые убогие решения - вполне возможно.

tailgunner ★★★★★
()
Ответ на: комментарий от kavkaz

Заур Абасмирзоев
kavkaz
(нохчо-аватарка)

Кокойты тонкий трольль.

anonymous
()
Ответ на: комментарий от tailgunner

Go это скорее такой С на героине. Легкий простой язык, уже сейчас библиотек куча. Мелкую хрень больше не пишу на питоне

vasily_pupkin ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Go это скорее такой С на героине. Легкий простой язык, уже сейчас библиотек куча. Мелкую хрень больше не пишу на питоне

Ни разу не конкурент Питону. Библиотек мало, в основном это СУБД и разные серверы, ну там ему и место. А Питон --- это универсальный язык. Тут тебе и ГУИ, и scipy/matplotlib всякие научные (вплоть до Sage), и те же базы данных, и сайты типа django, и много чего ещё.

Vudod ★★★★★
()

Из библиотек хотелось бы видеть нормальную реализацию лексического анализатора(lex), для создания каких-то препроцессоров.

kavkaz
()
Ответ на: комментарий от Vudod

ну там ему и место

спорить не буду, согласен

а вот за

Тут тебе и ГУИ

хочется убивать >_<

От sage тоже печально становится. Впрочем такое. Там питону действительно место

vasily_pupkin ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Почему Си? Потому что на героине. А Java - это Си на DMT.

Потому что там примитивная система типов

Система типов там не примитивнее ранней Явы (до 1,5). Но, как мы уже выяснили, Java это тоже Си, но на другом наркотике %)

tailgunner ★★★★★
()

жаль , что у гугли нет желания делать голэнг рельно массовым , то есть то, что как нишевый (сервер-сайд мультиконкурентный) - вполне его продвигают и на своих задачах и среди интересантов - однако пока? компы не станут у всех «32» ядерными(либо у каждого бомжа не стадет по много гаджетов образующих рой обьеденёных устройств) голэнг так и останется нишевым.

qulinxao ★★☆
()
Ответ на: комментарий от Bad_ptr

го это си сегодня.

т.е переносимый ассемблер.

однако таких переносимых уже ща пруд пруди асм.жс ; ллвм

что есть у голэнга так явная конкурентность - может сроляет.

qulinxao ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.