URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 123302
[ Назад ]

Исходное сообщение
"Релиз языка программирования Go 1.16"

Отправлено opennews , 17-Фев-21 14:16 
Представлен релиз  языка программирования Go 1.16, который развивается компанией  Google при участии сообщества как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок.  Код проекта распространяется под лицензией BSD...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=54605


Содержание

Сообщения в этом обсуждении
"Релиз языка программирования Go 1.16"
Отправлено маколюб , 17-Фев-21 14:17 
о, наконец то поддержка М1

лучшие компьютеры стали ещё лучше


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 14:19 
А что там особенного, это ведь тот же арм пусть и покоцаный.

"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:06 
Переделанный доступ к памяти. Из-за этого М1 рвут другие армы как тузик грелку и даже составляют конкуренцию интелам.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 21:27 
> даже составляют конкуренцию интелам

Сомнительное сравнение, ладно бы с райзенами сравнил.


"Релиз языка программирования Go 1.16"
Отправлено Ты идиот , 19-Фев-21 00:40 
Где там конкуренция? Весь софт и игры доступные на интелах уже есть и на м1/арм? Нет? Ну то хряпни вялого, эплобаба🤣

"Релиз языка программирования Go 1.16"
Отправлено InuYasha , 19-Фев-21 11:25 
а какой в них аналог ME/PSP? без бэкдоров и скрытого кода - не конкуренты! :)

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 14:23 
Главное что систему пакетов, сделали наконец хотя бы частично вменяемой. А то раньше она работала максимально идиотским способом.

"Релиз языка программирования Go 1.16"
Отправлено DEUDEV , 17-Фев-21 14:41 
кто использует Golang, сколько строк LoC у вас в проекте?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 14:58 
> сколько строк LoC

И сколько USD dollars of the United States of the USA вы зарабатываете?? Отпишитесь в этом ИТТ треде!!


"Релиз языка программирования Go 1.16"
Отправлено банкир , 17-Фев-21 19:58 
У тебя какая-то тройная тавтология.

"Релиз языка программирования Go 1.16"
Отправлено анонимит , 17-Фев-21 15:19 
Приложения на Go уже массово используются - Docker Kubernetes Prometheus Grafana Jaeger Loki и тд. По сути инфраструктура

"Релиз языка программирования Go 1.16"
Отправлено DEUDEV , 17-Фев-21 15:30 
я в курсе, но интересно как используется язык за пределами Devops тулов

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 01:59 
Всякие мелкие инфраструктурные штуки удобно писать, типа собиралки логов, или доставки событий, или backend-а для авторизации во внутренней системе (в паре с nginx auth_request), или всякие мелкие внутренние сервисы (типа кастомного geoip).

Строк кода в одной программе обычно совсем немного, в районе сотни-двух (они простые совсем), зато таких мелких программ десятки.


"Релиз языка программирования Go 1.16"
Отправлено Denis Dyakov , 18-Фев-21 10:24 
А вот пожалуйста - не лень же мне было целое пользовательское приложение пилить на Go: https://github.com/d2r2/go-rsync

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 17:12 
lol реально нефига было делать.

"Релиз языка программирования Go 1.16"
Отправлено Док , 20-Фев-21 08:13 
А как ui  сделали? - Через файн либу?

"Релиз языка программирования Go 1.16"
Отправлено Andrii , 18-Фев-21 20:24 
В нас, в Лондоне очень много компаний и банков на Go.

"Релиз языка программирования Go 1.16"
Отправлено Анончик , 17-Фев-21 17:46 
особенно весело что Kubernetes в фоне кушает 10% cpu и с минимум с пол гага памяти.
А теперь возьмите все маленькие демоны которые есть в лине и прикиньте сколько они бы жрали будь они написаны на гошке?
Тут от systemd плачут что он такой тяжелый не нужен, но с гошкой все впорядке, это теперь "инфраструктура"

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 17-Фев-21 17:55 
>особенно весело что Kubernetes в фоне кушает 10% cpu и с минимум с пол гага памяти.

Чувак, так что ж ты языком треплешь? Пиши такое-же (по функционалу) но чтоб 5% cpu и четверть гига памяти.
И все, греби деньги лопатой.

Или что, слабо !? Языком то оно на опеннете можно молотить забесплатно.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:08 
А что там такого распрекрасного "по функционалу"? Небрежная обёртка для автоматизации запуска докеров. Подобные штуки админы старой школы на баше или perl писали пачками, каждый для себя. А тут сваяли для современных девляпсов, чтоб не напрягались. Они и молятся на это. Аж "инфраструктура" это у них! B аноним выше прав, кубер то ещё поделие. Глючит по-чёрному, жрёт память и CPU на ровном месте. Там не полгига. Он и несколько гигов может сожрать без проблем, и занять своими etcd и kubelet-ами CPU на 50% без проблем. Вижу это поcтоянно.

"Релиз языка программирования Go 1.16"
Отправлено TorOdinovi4 , 17-Фев-21 20:58 
Да что ты несешь такое, человече!
Ну окунись ты в тему, прежде чем умного из себя строить))))

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 22:18 
В отличии от тебя, окунутся таки пришлось. По самые уши запачкался этой субстанцией.

"Релиз языка программирования Go 1.16"
Отправлено TorOdinovi4 , 18-Фев-21 15:10 
Почти поверил даже)

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 03:38 
Ну напиши хоть на баше, хоть на перле, да на чем хочешь, такую альтернативную "обертку", чтоб выполняла примерно то же самое, но жрала меньше и не глючила. Станешь знаменитым.

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 18-Фев-21 09:27 
>Подобные штуки админы старой школы на баше или perl писали пачками, каждый для себя.

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

И по итогу: все поделки умерли, и репутацию неплохому языку изговнякали.


"Релиз языка программирования Go 1.16"
Отправлено мое правило , 18-Фев-21 10:23 
Обёртка для докеров - орнул. Вы видимо не в теме уже давно. Во первых - там под капотом не докер. Во вторых - это не для запуска 1 пода с вашим анимэ на  старом макбуке в кредит, а для огромных кластеров.

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


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 12:12 
Вот для огрумных клустеров админы старой школы и писали. А как работали все крупные сервисы до появления всемогущего  всевеликого бубера по-вашему? И докер там под капотом, ещё пока везде, не скоро его оттуда сковырнут.

"Релиз языка программирования Go 1.16"
Отправлено мое правило , 18-Фев-21 10:26 
Обёртка для докеров - орнул. Вы видимо не в теме уже давно. Во первых - там под капотом не докер. Во вторых - это не для запуска 1 пода с вашим анимэ на  старом макбуке в кредит, а для огромных кластеров.

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


"Релиз языка программирования Go 1.16"
Отправлено Анончик , 17-Фев-21 18:12 
>Чувак, так что ж ты языком треплешь? Пиши такое-же (по функционалу) но чтоб 5% cpu и четверть гига памяти.
>И все, греби деньги лопатой

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

>Или что, слабо !? Языком то оно на опеннете можно молотить забесплатно.

Не могу ответить, я еще не пробовал грести деньги лопатой.
Хотелось бы более подробную инструкцию от знающего человека.


"Релиз языка программирования Go 1.16"
Отправлено bergentroll , 17-Фев-21 21:35 
Шаг 1: Возьмите деньги...

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 22:32 
Шаг 0: Возьмите лопату

"Релиз языка программирования Go 1.16"
Отправлено bergentroll , 18-Фев-21 06:37 
> Шаг 0: Возьмите лопату

Будут деньги — будет и лопата.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 15:50 
> Шаг 0: Возьмите лопату

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


"Релиз языка программирования Go 1.16"
Отправлено alex312 , 18-Фев-21 08:48 
>Да вы, великий маркетолог, сходу определи потребности рынка

да хули тут определять, кубернетсы есть - значит есть рынок кубернетсов.

>точно знает как грести лопатой деньги.

Ага, делаешь функциональный аналог существующего продукта, но в 2 раза дешевле - и все. весь рынок твой!


"Релиз языка программирования Go 1.16"
Отправлено Анончик , 18-Фев-21 11:22 
>Ага, делаешь функциональный аналог существующего продукта, но в 2 раза дешевле - и все. весь рынок твой!

git pull https://github.com/kubernetes/kubernetes
find . -type f -name "*.txt" -print0 | xargs -0 sed -i "s/kubernetes/kubernetes pro/g"
готово, в лучших традициях РашенСтартап по мотивам Дениса и Лёхи.
  


"Релиз языка программирования Go 1.16"
Отправлено alex312 , 18-Фев-21 12:50 
что-то не увидел в твоем рецепте уменьшения потребления ресурсов.
Из этого делаю вывод. как сделать лучше ты не знаешь, можешь только ныть в комментах.
Чтож, очередной балабольчик.

"Релиз языка программирования Go 1.16"
Отправлено Owlet , 17-Фев-21 20:15 
Пол-гига это ещё по-божески, полноценное окружение несколько гигов сожрёт, ничуть не лучше, чем написанный на питоне openstack.

Кстати:

> отдельными заимствованиями из языка Python

вообще ничего общего.


"Релиз языка программирования Go 1.16"
Отправлено Vladimir Poliakov , 19-Фев-21 00:16 
Есть заимствования.
Я очень быстро не мелкий проект с Python+Flask перевел на Golang именно потому, что местами похоже.

"Релиз языка программирования Go 1.16"
Отправлено dev1 , 20-Мрт-21 13:28 
Проблемма програм на ГО не столько в самом ГО, сколько в разработчиках, хотя у самого языка проблем выше крыши. ГО - это простой и доступный инструмент, который предоставляет достаточно низкоуровневые возможности. Пользуясь этим, многие вчерашние веб разработчики, особенно домороченные нода-разрабы, которые слезли с фронта и сразу возомнили себя бекендерами, лезут реализовывать свои влажные мечты, не понимая зачастую что кроме знания синтаксиса языка, необходимо так же хоть сколько-то понимать архитектуру ОС и компилятора, ну и в общем имеют знания немного из другой области и думают что достаточно понимания алгоритмов. А успех продукта в итоге больше зависит от хайпа нежеле от качества кода. В результате получается что кучка не очень грамотных разрабов выпускают успешный продукт, в котором в общем-то ничего великого нет и код говно, но на который все молятся. А реальной же заслугой разрабов является идея, усердие для её воплощения и потраченное время. Вот так и живем...

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 03:35 
У меня есть маленький уютный опенсорс-проект на 35 тысяч строк кода, например, а что? (на самом деле проект не один, но этот - любимый)

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 21:44 
Дай позырить =)

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:38 
В моём проекте в стартапе у меня в сумме было 70к LOC

"Релиз языка программирования Go 1.16"
Отправлено Хрю Хрю , 19-Фев-21 08:41 
А я вощем написал такое

for(int i = 0; i < 70000; i++) {
    puts("Helo Worald");
}

и мой проЭкт тоже 70000 тыщ строк!


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 19-Фев-21 10:24 
> А я вощем написал такое
> ...scip...
> и мой проЭкт тоже 70000 тыщ строк!

Нет, я писал не такое.


"Релиз языка программирования Go 1.16"
Отправлено Растоним , 17-Фев-21 14:55 
когда по скорости растров догонят? ой никогда, конкуренции руби и питон у этой поделки

"Релиз языка программирования Go 1.16"
Отправлено анонимит , 17-Фев-21 15:20 
ха-ха-ха.. уморил, но Rust производительнее

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:02 
> Добавлен пакет embed, предоставляющий средства для встраивания в программу произвольных файлов и каталогов

Потихоньку догоняют Си 40-летней давности. Когда там добавили #include? Когда появился xxd?


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:25 
Что, хипстеры наконец подзаколебались при сборке постоянно перекачивать весь интернет?

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:40 
> Что, хипстеры наконец подзаколебались при сборке постоянно перекачивать весь интернет?

У же два года как вендоринг надёжно решил эту проблему. Лишь бы ляпнуть чо.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 16:11 
>> Добавлен пакет embed, предоставляющий средства для встраивания в программу произвольных файлов и каталогов
> Потихоньку догоняют Си 40-летней давности. Когда там добавили #include? Когда появился xxd?

Опеннетные балаболы потихоньку балаболят?
https://pkg.go.dev/github.com/jteeuwen/go-bindata
>  Nov 20, 2014
> This package converts any file into managable Go source code. Useful for embedding binary data into a go program. The file data is optionally gzip compressed before being converted to a raw byte slice.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 16:32 
Такую фигню можно для любого языка написать. Правда в сишке это было всегда, а в игогошечке вплоть до сегодняшнего дня нужно было идти качять)) стороннюю мокрую писечку.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 17:12 
это линкером делается, писать ничего не надо - добавляешь свою секцию data

"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:08 
Вот только для мипсов бинутилы для этого так и не доделали.

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 18-Фев-21 08:41 
допустим затянул ты линкером некий файл в бинарь.
Как его потом из С использовать?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:34 
Берешь вот и используешь себе. В чем проблема ? Или учебник скачать не можешь ?

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 19-Фев-21 10:46 
проблема в том что ты безграмотный балабол.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 16:21 
Лет через десять смотри и догонят.Сингулярность,епт.

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 17-Фев-21 17:58 
очередной дырявый сишник заврался.

Это когда #include научился каталоги встраивать в программу?


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:19 
> очередной дырявый сишник заврался.

Скорее всего, очередной "слаще морковки не едавший" увидел знакомое слово.
Кстати, интересно, "гуру" с xxd выше, в курсе "маленьких нЬю-ансов"
> 4095 characters in a logical source line
> 4095 characters in a character string literal or wide string literal (after concatenation)
> 65535 bytes in an object (in a hosted environment only)

(а в с89 - вообще лимит в 32KB)


"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:24 
> 65535 bytes in an object (in a hosted environment only)

Это не жесткое ограничение. У меня таким образом инклудится двухметровый файл с unsigned char x[] = {...};


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 22:18 
>> 65535 bytes in an object (in a hosted environment only)
> Это не жесткое ограничение. У меня таким образом инклудится двухметровый файл с
> unsigned char x[] = {...};

Естественно не жесткое, это минимальный лимит из стандарта.
И естественно, на разных компиляторах можно было по разному "поудивляться" ;)



"Релиз языка программирования Go 1.16"
Отправлено Denis Dyakov , 18-Фев-21 10:35 
Никогда там не будет #include - это как раз тот анахронизм, от которого все модные молодежные языки програмирования избавляются с рождения.

Вот здесь рассказ Роберта Пайка, создателя языка Go, про то, что #include в больших проектах на C/C++ приводит к тому, что один и тот же файл вычитывается десятки раз, из за чего время компиляции на этапе препроцессинга достигает получаса и более (читать раздел 5. Dependencies in C and C++): https://talks.golang.org/2012/splash.article

[сообщение отредактировано модератором]


"Релиз языка программирования Go 1.16"
Отправлено Анончик , 18-Фев-21 11:32 
Отличная иллюстрация того что проблемы гугла не шибко то волнуют остальной мир и именно по этому гуглу и нужен был golang.

"Релиз языка программирования Go 1.16"
Отправлено анонимррр , 18-Фев-21 21:28 
C++ тоже уходит от include на модули в C++20

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 21:46 
В то время когда уже эти ушли.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 15:47 
Выкинув все либы и оставив весьма тухлую возможность подключать C код (CGo is not Go как говорит Пайк). Вот когда допилят свои либы до уровня крестов, можно будет честно сравнить. Ставлю на то, что в крестах скорость компиляции к тому времени поднимут в 10 раз, как и обещал Страуструп.

"Релиз языка программирования Go 1.16"
Отправлено ptr128 , 20-Фев-21 19:11 
Все решаемо, по крайней мере, на GCC
http://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html...

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:41 
> Потихоньку догоняют Си 40-летней давности. Когда там добавили #include? Когда появился
> xxd?

А давно Си умеет квалифицированный импорт, инициализацию пакетов в правильном порядке импорта и сокрытие сущностей? Лучше бы молчал -- умнее бы выглядел.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 17:16 
Вот чисто для справки - весь твой модный го..вненок делается за пару часов на коленке, откуда столько шума вокруг этого убожества - понять невозможно, видимо за это вваливают бабло, а раз вваливают значит окучивают лоха. А на директора гулга ты не похож кстати.

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 19-Фев-21 10:52 
>Вот чисто для справки - весь твой модный го..вненок делается за пару часов на коленке,

очередной анонимный "таксист", всегда знает как надо сделать лучше, но некогда 😁


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 17:39 
что-то жиденькое совсем у тебя. Этому на мивину не давать месяц ! пусть подсохнет децл

"Релиз языка программирования Go 1.16"
Отправлено AndrD , 20-Фев-21 09:03 
Да что ты несёшь такое? Как ты сюда попал?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:03 
надо было компилятор Golang на rust переписать

"Релиз языка программирования Go 1.16"
Отправлено Сейд , 17-Фев-21 16:43 
А компилятор Rust переписать на Crystal.

"Релиз языка программирования Go 1.16"
Отправлено Анончик , 17-Фев-21 17:49 
Ну вот JVM переписали с C++ на Java и неплохо так вышло я вам скажу(GraalVM).

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:05 
GUI юзабельный есть?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:10 
Я слышал, есть серьёзные проблемы с использованием нейтив кода. В частности, производительность просаживается. По этой причине никакого тебе гуя, и для игрушек тоже использовать нельзя. Чисто вебнявая поделка.

"Релиз языка программирования Go 1.16"
Отправлено анонимут , 17-Фев-21 15:22 
И инфраструктурная, что уже немало для вытеснения Java Python и прочее

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:26 
Этих не жалко.

"Релиз языка программирования Go 1.16"
Отправлено DEUDEV , 17-Фев-21 15:33 
чтобы питон и джаву вытеснить отдного равенства или незначительного превосходства в производительности не достаточно, нужны сотни тысяч "батареек", кучу оттестиных временем модулей.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 21:48 
Не выйдет там батарейки стандартизированы и в комплекте, а тут бегай по всему интернету ищи.

"Релиз языка программирования Go 1.16"
Отправлено анонимут , 17-Фев-21 15:26 
Многие приложения сейчас на самом деле web приложения

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:37 
Это где такое ?

"Релиз языка программирования Go 1.16"
Отправлено qweqwe , 17-Фев-21 15:53 
Даже фотошоп стал облачным... а вам всё гуй гуй...

"Релиз языка программирования Go 1.16"
Отправлено SinoptikU , 17-Фев-21 16:27 
Пора и ОС в инеты загонять и абонплату за использование брать!

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:20 
Вы, физики, как хотите, но бизнесс говорит: "Нет!".
Корпоративная тайна - данные организации которые публиковать нельзя.
Так что да - гуй, гуй..

"Релиз языка программирования Go 1.16"
Отправлено SinoptikU , 17-Фев-21 18:53 
Это сарказм был! Я, кстати, тоже за GUI, потому что нативнее и быстрее.

"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:10 
Бизнес говорит "Да, Майкрософт, имей меня полностью. Вот тебе мои документы онлайн, вот тебе моя переписка онлайн, вот тебе мои чаты онлайн, вот тебе база моих клиентов онлайн".

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 21:18 
Ну если руководители бизнеса позволяют протыкать, то пожалуйста. У нас по-другому.

"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:25 
У вас бизнес научен фсб все прятать. В мире бизнес научен доверять корпорациям зла.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 07:22 
А причем тут фсб?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 21:51 
Слашал они приходят и все читают по ночам.

"Релиз языка программирования Go 1.16"
Отправлено Myyx , 17-Фев-21 23:20 
электрона хватит для всего

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:42 
> GUI юзабельный есть?

Gtk, Qt, Tk, UI, Godot, Flask, termux, HTML5 -- хватит?


"Релиз языка программирования Go 1.16"
Отправлено имя_ , 18-Фев-21 11:38 
>Godot, Flask, ... HTML5

охлол


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 22:13 
Погоди это какие-то библиотеки причем первая идет с тонной каких-то хвостов, а вторая С++ код только поддерживает и сомнительно что там есть биндинги к Golang.

Речь о встроенной реализации, что-то вроде Swing в Java или WinForms в .NET,
а точнее какой-то путь предоставленный самими разработчиками языка.

Просто язык который ен позаоляет визуализировать и взаимодействовать с пользоватлелем очень странный язык. Причем это какой-то путь в Backend для джунов?


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 19-Фев-21 10:29 
> Погоди это какие-то библиотеки причем первая идет с тонной каких-то хвостов, а
> вторая С++ код только поддерживает и сомнительно что там есть биндинги
> к Golang.

Мне, как программисту -- без разницы на чём написана либа. Все перечисленные имеют 1(или даже 2) привязки к Go, или имеют нативную реализацию на Go. Вам ехать или шашечки?

Вторая из перечисленных внезапно имеет биндинги как минимум к питону, кроме Go.



"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:39 
> Мне, как программисту -- без разницы на чём написана либа

Тут либо первое либо второе.


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 19-Фев-21 10:41 
>> Мне, как программисту -- без разницы на чём написана либа
> Тут либо первое либо второе.

Ответ не правильный. Тут дедлайн и бюджет.


"Релиз языка программирования Go 1.16"
Отправлено Илья , 26-Фев-21 21:56 
Пожалуйте вот вам GUI fyne.io/fyne

"Релиз языка программирования Go 1.16"
Отправлено figli , 18-Фев-21 12:35 
liteide

"Релиз языка программирования Go 1.16"
Отправлено Q2W , 17-Фев-21 15:18 
> предоставляется новая директива "//go:embed".
> Например, указание в коде комментария "//go:embed test.txt"
> и объявление следом переменной "var f embed.FS" приведёт

Т.е. добавили в язык фичу, но она живёт в комментариях?
Это чё за жесть такая в 2021?
Костыли в языке такие большие, что их видно даже в прессрелизах!


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:47 
Нужно больше магических выкрутасов!

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 16:11 
А что вы хотели от человека, который такое утверждает:

"Подсветка синтаксиса — для маленьких. В детстве меня учили арифметике на цветных палочках. Сейчас я вырос и использую чёрно-белые цифры."


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 17:29 
но ведь он прав!

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:45 
> но ведь он прав!

Он прав.


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:45 
>> предоставляется новая директива "//go:embed".
>> Например, указание в коде комментария "//go:embed test.txt"
>> и объявление следом переменной "var f embed.FS" приведёт
> Т.е. добавили в язык фичу, но она живёт в комментариях?
> Это чё за жесть такая в 2021?
> Костыли в языке такие большие, что их видно даже в прессрелизах!

Т.е. то, что эта фича позволяет сохранить обратную совместимость первой ветки -- ничего не стоит? То, что эта фича работает на всех платформах -- это тоже не важно? И то, что 1.16 теперь работает исключительно с модулями -- этого вы (конечно) не заметили? Вы точно не в 90х?

Вы часом не поклонник перехода от питона2 к питону3?))


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 21:28 
Может не нужно было это изобретать? Ни версию 1, ни следующие?

"Релиз языка программирования Go 1.16"
Отправлено PetrG , 18-Фев-21 23:42 
Однако - нет. Если этот комментарий не обрабатывается - то программа не будет правильно работать. Так что совместимости это не добавляет.

Для Го давно есть несколько библиотек которые делают тоже самое. Могли бы API из них позаимствовать и добавить это в стандартную библиотеку, например.


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 19-Фев-21 10:33 
> Однако - нет. Если этот комментарий не обрабатывается - то программа не
> будет правильно работать. Так что совместимости это не добавляет.

Каким образом в старом коде может появиться НОВАЯ ФИЧА?
Каким образом в новом проекте может появиться НОВЫЙ компилятор, если он не установлен, а в новом компиляторе ПРИНУДИТЕЛЬНО ВКЛЮЧЕНЫ модули, где ПРИНУДИТЕЛЬНО указана ВЕРСИЯ КОМПИЛЯТОРА?


Вы какую-то чушь написали.


"Релиз языка программирования Go 1.16"
Отправлено randomize , 19-Фев-21 10:34 
> Вы часом не поклонник перехода от питона2 к питону3?))

Чисто религиозный вопрос.


"Релиз языка программирования Go 1.16"
Отправлено еман , 18-Фев-21 13:32 
ты кто такой, чтобы ставить это под вопрос?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:19 
Если бы гугель однажды не выкинул сие из своих недр за непригодностью, и хипстота не подцепила бы это, и не обмазалась бы этим по самые уши, мир был бы лучше.

"Релиз языка программирования Go 1.16"
Отправлено анонимут , 17-Фев-21 15:24 
C++ лучше. По сравнению с Node.js/Python/Java Go лучше

"Релиз языка программирования Go 1.16"
Отправлено anonnononon , 17-Фев-21 15:29 
Go где-то на уровне питона по уродливости.

Java и Node.js (это вообще-то платформа, писать можно но чем угодно, хоть typescript, хоть purescript, хоть rust) это просто совершенно другая лига. Со сройными консистентными  API, достаточно хорошо задизайнеными абстрактными концептами и т.д..

В go из хорошего только каналы есть. Но как показывает практика, ни один серьезный код не обходится без мьютексов и всего того, что go обещал похоронить.

Это какой-то рак индустрии, на равне с javascript-ом.


"Релиз языка программирования Go 1.16"
Отправлено qweqwe , 17-Фев-21 15:59 
nodejs под капотом однопоточный. И по сравнению с Го ждёт память как не в себя.
Java сложная и избыточна в той сфере, где применяется go.

>  ни один серьезный код не обходится без мьютексов и всего того, что go обещал похоронить.

Мьютиксы можно реализовать на уровне синтаксиса. Или использовать инструменты из пакета sync, мьютикс там кстати тоже есть.

> Это какой-то рак индустрии, на равне с javascript-ом.

Это не рак, это ещё один инструмент созданный решать конкретные задачи.

Зайди в любой магазин инструментов и ты увидишь как часто появляются новые механизмы и инструменты. Так же и в программировании.

У тебя есть кувалда и молоток, чем будешь пилить дерево?


"Релиз языка программирования Go 1.16"
Отправлено anonnononon , 17-Фев-21 16:43 
> Это не рак, это ещё один инструмент созданный решать конкретные задачи.

Рак это не болезнь, это еще один вид клеток, выполняющих конкретную функцию.

Единственная задача Go — позволить тысячам людей, научившихся в if-else писать код, который все-таки делает что-то полезное.

С этой задачей Go, конечно, справился, но выиграли ли от этого кто-то, кроме гугла — вот вопрос.
Ну может еще парочка говноконторок, типа intuit.

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


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 17:30 
>nodejs под капотом однопоточный

"под капотом" конкретно nodejs не однопоточный


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 15:27 
Не, гугель просто заколебся тем что питоннетормозит!!!111 и устал сервера покупать. Поэтому решил устроить питоняшам экстерминатус.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 16:23 
Мне этот язык не нравится, чисто с админской стороны.

Есть, например, небольшая программка на Go. Небольшая - зависимостей 10-15. Вопрос, который меня убил - как ее собрать в пакет?

Изучив то что было на тот момент в Go 1.14 по вытягиванию зависимостей, я был в ужасе.
Получается, что чтобы собрать программу текст которой содержит внешние зависимости от других библиотек, мне нужно... скачать их из какого-попало гитхаба/гитлаба и прочего.

В гитхабе оно привязывается к тегу ну или бранчу... не важно. Главное что признаком нужной версии в конечном итоге является хэш коммита. НО! Пакетный менеджер Go видит тег, а не хеш. То есть теоретически если программа prog1 версии 0.1.0 требует библиотеку lib1 версии 1.0.4, то 1.0.4 будет тегом, который разработчики lib1 могут поменять.

Видимо программистов на Go не учили что такое "релиз" и, типа, это нормально зацепиться зависимостью на какой-то бранч в который в конечном итоге могут закоммитить и что-то поломать. И вот эта байда по всему Go.

Fedora, например, решает проблему так:
1. Написать спек для каждой библиотеки, от которой зависит программа так, чтобы результирующий SRPM проверял не только тег, но и хэш коммита
2. Писать спек rpm который будет тянуть код для сборки программы не из git, а из специально оформленных SRPM-пакетов с кодом зависимостей.

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

Судя по обсуждениям и объяснениям, RedHat решил себе столько работы придумать, потому что не уверен в том, что завтра, послезавтра или через 5 лет программа из репозитория соберется, если у нее есть внешние бесконтрольные зависимости. Debian, как я понял из новостей про kubernetes решил что "и так сойдет", но я не проверял, это не точно.

Просто если дать Go-компилятору волю, он именно в инет на git полезет за своими зависимостями. Какие-то идеи по надежному сопровождению, гарантии, повторяемость сборки летят псу под хвост, если не обмазаться сотнями SRPM-ок на Go... с одной стороны. С другой стороны, работы на пустом месте оно создаёт так много, что лучше программы на Go просто не поставлять ни в составе дистров, ни в собственных корпоративных репозиториях. Только бинарно, построив отдельную специфичную для Go систему сборки и тестирования.

У питона, например, таких проблем нет, потому что питоновское барахло имеет релиз.

Если у вас на предприятии кто-то хочет писать на Go программу, которую нужно сопровождать Вам, постарайтесь донести до менеджмента, что наличие кода на Go увеличивает нагрузку на техподдержку. Микросервисы в кубиках пусть пишут, но не больше. Благо, с ними девопсы мучаются в отдельном CI/CD, а не техподдержка.


"Релиз языка программирования Go 1.16"
Отправлено Сейд , 17-Фев-21 16:53 
Особенно интересно собирать RPM для программы на Go в Fedora Copr. Перед этим нужно собрать нужные для компиляции зависимости, но ещё перед этим нужно собрать вторые зависимости для компиляции первых зависимостей.

"Релиз языка программирования Go 1.16"
Отправлено Анончик , 17-Фев-21 18:02 
Так не нужно запускать go get -u и не будет вам обновлений на зависимости.
Ну а вообще да если исходить из необходимости опакечивания то нужен отдельный тулинг для этого. Увы и ах, тулинг написанный под си тут не очень подходит из коробки

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:32 
> Если у вас на предприятии кто-то хочет писать на Go программу, которую нужно сопровождать Вам, постарайтесь донести до менеджмента, что наличие кода на Go увеличивает нагрузку на техподдержку. Микросервисы в кубиках пусть пишут, но не больше. Благо, с ними девопсы мучаются в отдельном CI/CD, а не техподдержка.

После секса с python 2/3 у нас на предприятии поднялся вопрос на какую платформу мигрировать окончательно чтобы больше не получать проблемы, простои и убытки. Нужно было выбрать максимально надёжный язык, гибкий, предсказуемый и не подкидывающий неожиданностей ЯП. Выбрали perl5 и ни разу не пожалели об этом. Чуть изучив XS стало ясно что на perl вообще можно сделать все что нужно и как того требуется. В обнимку с XS и Си мы смогли легко подцепиться к драйверам оборудования исходников которых производитель никогда не даст. Ну а то насколько "каквамугодно" позволяет perl разворачивать проекты - это фантастика. Раньше perl использовался только для админских задач, а теперь на нём строится весь dataflow в бизнессе.

PS: Как допилим проект и выйдем на закрытие задач по бизнесу - буду настаивать на хороший донат для perl. Он определенно заслуживает это!


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:53 
Чёт котолампа.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 19:08 
Я имею в виду даже не котолампа, а копипаста. Я уже видел это именно в таком набросном изложении.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 21:34 
> Я имею в виду даже не котолампа, а копипаста.

Логическая нестыковка по контексту. Следовательно, либо сообщения #88 и #89 писались разными анонимами, либо плоховато в голове у анона.

Не знаю что вы и где видели, но вот вам реальный "котоламповый" кусок кода из error.xsh :


MODULE = DriverIO                PACKAGE = DriverIO::Error

# комбинированный код+ошибка
U32 RawCode(arg)
    U32 arg;
    CODE:
        RETVAL = raw_error_code(arg);
    OUTPUT:
        RETVAL

# xs_error_code set XS_ERROR_CODE_FLAG
void SetXSErrorCode(arg)
    U32 arg;
    CODE:
        set_xs_error_code(arg);

AV* GetCode()
    INIT:
        AV* av = newAV();
        SV* flags = newSVuv(get_error_code_flags());
        SV* code  = newSVuv(error_code_no_flags(0));
    CODE:
        av_push(av, flags);
        av_push(av, code);
    RETVAL = av;
    OUTPUT:
        RETVAL

U32 Success()
    CODE:
        RETVAL = test_success();
    OUTPUT:
        RETVAL

U32 IsDriverError()
    CODE:
        RETVAL = test_driver_error();
    OUTPUT:
        RETVAL

U32 IsXSError()
    CODE:
        RETVAL = !test_driver_error();
    OUTPUT:
        RETVAL


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 01:26 
XS и развертывание - это как раз минусы перла. Особенно в последние годы упала стабильность интерфейса XS.
Даже в PHP API для написания расширений намного проще, чем XS.
Сам язык медленный. Далеко не все происходит в сишной части. Не такой тормоз, как питон, но все равно.

Если подобного плана языки сравнивать, у Lua и развертывание, и написание биндингов проще даже не в разы - на порядок. За счет JIT можно писать производительный код даже прямо на языке.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:44 
Что там у перла упало в последние годы ?

"Релиз языка программирования Go 1.16"
Отправлено valyala , 17-Фев-21 22:18 
Откройте для себя `go mod vendor`. Нормальные проекты, написанные на Go, собираются без лазанья в интернет за зависимостями, т.к. все нужные зависимости уже заботливо сложены в репозитории в папку `vendor` с помощью `go mod vendor`. См., например, https://github.com/VictoriaMetrics/VictoriaMetrics/ .

"Релиз языка программирования Go 1.16"
Отправлено Capra , 20-Фев-21 21:14 
Только хотел написать, что мешает сделать локальный срез необходимых репозиториев?

"Релиз языка программирования Go 1.16"
Отправлено a , 18-Фев-21 00:58 
>> Пакетный менеджер Go видит тег, а не хеш

балабол-неосилятор. Как скажешь так и будет. Хоть тег, хоть хеш коммита.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 02:06 
Еще один не осилил, но критикует.

Принцип тут ровно такой же, как и везде - если ты не разработчик, не дергай обновление зависимостей по сети. Читать про go mod vendor.

Ничего такого специфичного в системе сборки go нет, от всяких там gradle принципиально не отличается. А поставлять внутри предприятия конечно надо бинари, собранные на собственном билд-сервере.


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:49 
> Видимо программистов на Go не учили что такое "релиз" и, типа, это
> нормально зацепиться зависимостью на какой-то бранч в который в конечном итоге
> могут закоммитить и что-то поломать. И вот эта байда по всему
> Go.

Вы сейчас какую-то откровенную фигню написали. Посмотрите вот сюда:
> golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad // indirect

Здесь ВООБЩЕ нет никаких тегов. Дата коммита с точностью до микросекунды и хэш от коммита.
"Какой-то бранч"?))) Ну ка, пример в студию, как вы сможете зацепить бранч НЕ МАСТЕР?)) Ой, простите.. НЕ ПРАЙМЕРИ))

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


"Релиз языка программирования Go 1.16"
Отправлено Ordu , 18-Фев-21 20:06 
> Ну ка, пример в студию, как вы сможете зацепить бранч НЕ МАСТЕР?

А по хешу коммита разве нельзя?


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 19-Фев-21 10:35 
>> Ну ка, пример в студию, как вы сможете зацепить бранч НЕ МАСТЕР?
> А по хешу коммита разве нельзя?

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


"Релиз языка программирования Go 1.16"
Отправлено Митя Трансформатор , 19-Фев-21 03:15 
>Микросервисы в кубиках пусть пишут, но не больше.

Так а больше и не надо. Весь продакшен давно в кубике. Контейнер крутится - лавеха мутится.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 18:52 
Go это ЯП для смузидевочек с розовыми волосами

"Релиз языка программирования Go 1.16"
Отправлено анонимз , 17-Фев-21 19:17 
Не всем же быть бородатыми однимами в растянутых свитерах с аленями :)

Я на Go написал TCP сервер с TCP клиентом передающий кадры через TCP сокет за вечер не напрягаясь.


"Релиз языка программирования Go 1.16"
Отправлено Sw00p aka Jerom , 17-Фев-21 22:02 
>передающий кадры

сегменты


"Релиз языка программирования Go 1.16"
Отправлено анонимз , 18-Фев-21 07:09 
Вообще я графические кадры передавал

"Релиз языка программирования Go 1.16"
Отправлено Sw00p aka Jerom , 18-Фев-21 14:36 
> Вообще я графические кадры передавал

а зачем тогда акцентировать на TCP?


"Релиз языка программирования Go 1.16"
Отправлено анонимррр , 18-Фев-21 21:59 
Просто свой протокол

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:47 
вау, этот чел передал тсп за вечер, сума сойти, сила го !

"Релиз языка программирования Go 1.16"
Отправлено Sw00p aka Jerom , 19-Фев-21 20:57 
> вау, этот чел передал тсп за вечер, сума сойти, сила го !

да неее, просто не однозначно выразился, как следствие - появления дополнительных вопросов для ясности.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 22:44 
А теперь сохрани эти кадры в mysql

"Релиз языка программирования Go 1.16"
Отправлено СССР , 17-Фев-21 23:13 
а я на с++ тоже самое за 20 минут

"Релиз языка программирования Go 1.16"
Отправлено анонимз , 18-Фев-21 07:11 
...а возни было больше с чтением и шифрованием кадров изображения. Я для демо проекта RSA реализовал.

"Релиз языка программирования Go 1.16"
Отправлено анонимз , 17-Фев-21 19:19 
Хотя C++ мне всё равно нравится больше

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 00:30 
C++ это урод от мира ЯП, хуже него только раст

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 03:19 
Раст лучше, продвинутее.

"Релиз языка программирования Go 1.16"
Отправлено Хартман , 18-Фев-21 07:00 
Продвинутее в убогости и я об этом

"Релиз языка программирования Go 1.16"
Отправлено какбычегоневышло , 17-Фев-21 23:58 
Как раз это таки про раст. Самое девочко-розово-френдли коммюнити. Но я, кстати, не записывал бы это в недостаток. Некоторые из этих девочек легко запихнут за пояс матерых свитероносцев, щеголяющих доскональным знанеим плюсов. Ну и что, что ноги не бреют?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 00:33 
А че кресты то сразу? Go каким боков пересекается с десктопом или системным софтом? Это язычок для написания микросервисов, так что сравнивать гоу правильнее с вебней типа шафра и жабы, но те конечно более общие ЯП

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:56 
> А че кресты то сразу? Go каким боков пересекается с десктопом или
> системным софтом? Это язычок для написания микросервисов, так что сравнивать гоу
> правильнее с вебней типа шафра и жабы, но те конечно более
> общие ЯП

Моя десктопная софтина на Go с тобой полностью не согласна. Чушь написал не подумав.
Кресты -- убожество.


"Релиз языка программирования Go 1.16"
Отправлено nelson , 18-Фев-21 12:11 
> Go каким боков пересекается с десктопом или системным софтом?

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


"Релиз языка программирования Go 1.16"
Отправлено Чума , 17-Фев-21 19:38 
Go был бы нормальным, если бы не сpал в ~/go и ~/.cache/go-build

"Релиз языка программирования Go 1.16"
Отправлено анонимз , 18-Фев-21 07:14 
Открой для себя GOPATH хотя бы

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 08:07 
Ты не в теме. И совсем не понял проблему.

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:57 
> Go был бы нормальным, если бы не сpал в ~/go и ~/.cache/go-build

Пути выставлять и go cashe clean не пробовал, чудик?


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 17:18 
Так это, rm -fr где там эти go, в /usr/bin через судо если что. Нафиг в систему тянешь всякую парашу.

"Релиз языка программирования Go 1.16"
Отправлено Чума , 17-Фев-21 19:41 
Так решаются 98% проблем с исходниками Go:

#!/bin/sh

set -eux

: "${KUMA_GIT_REPO:=https://github.com/kumahq/kuma.git}"
: "${KUMA_GIT_REV:=1.0.7}"

tmpdir=$(mktemp -d -t "kuma-git-${KUMA_GIT_REV}-XXXXXX")
trap 'rm -rf "$tmpdir"' EXIT

git clone --depth 1 --branch "${KUMA_GIT_REV}"  "${KUMA_GIT_REPO}" "$tmpdir/kuma-${KUMA_GIT_REV}"

tar -cvJf "kuma_${KUMA_GIT_REV}.orig.tar.xz" -C "$tmpdir" \
  --exclude '.*' \
  "kuma-${KUMA_GIT_REV}"

cd "$tmpdir/kuma-${KUMA_GIT_REV}"
go mod vendor -v
cd -

tar -cvJf "kuma_${KUMA_GIT_REV}.orig-vendor.tar.xz" -C "$tmpdir/kuma-${KUMA_GIT_REV}" \
  --exclude '.*' \
  --strip-components=1 \
  "vendor"


Почему не 100%? Потомучто там ещё JS & Yarn и нагенеренные файлы Go.


"Релиз языка программирования Go 1.16"
Отправлено Урри , 17-Фев-21 21:14 
> Отмечается, что 96% разработчиков уже перешли на новую систему модулей.

Другими словами 24 уже перешли, а 25й еще нет.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 21:49 
> import _ "embed"

Если бы я даже на прошлой работе такое придумал меня бы расстреляли как минимум.

"Кому как, конечно, но я бы не стал" (с)


"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 10:59 
>> import _ "embed"
> Если бы я даже на прошлой работе такое придумал меня бы расстреляли
> как минимум.
> "Кому как, конечно, но я бы не стал" (с)

1) Тебя никто не заставляет.
2) Куча пакетов с десятками килолайков на гитхабе именно так себя инициализируют. Например, небеизвестный goql.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 21:51 
Уже лет 7 на гошке пишу, после с++ - это просто радость.
При этом языке проще, а зп выше.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 23:05 
Опять все стерли. Обострение прогрессирует. Может к доктору уже пока не поздно? Еще чуть-чуть - и вспомнить не сможете что такое каменты и как их удалять.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 23:07 
Я серьезно. Мне самому-то уже лет дохрена, а я работал с программистами после инсульта. Ужасная штука. Лучше не шутить.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 23:21 
Давай я тебе по существу отвечу раз уж.
Гошка - гуано. Ниже мой камент про монгу, плюс немного собственного опыта. И даже если бы все поделки на го не жрали память как не в себя (уверен, где-то есть волшебные настройки, но пока не могу понять где, впрочем, уже ненужно), все равно воротит от синтаксиса. Для меня самое логичное обяснение гошкиному хайпу это то, что Пайк, при всем уважении, набрал кредитов и ипотеку впридачу, вот и вынужден симулировать бурную деятельность в гугле. Видосы с плюшевыми куклами для совсем уж целевой аудитории в том числе.
Я вернулся к плюсам. После питона, го, и прочего - радость просто неимоверная.

"Релиз языка программирования Go 1.16"
Отправлено qweqwe , 18-Фев-21 07:03 
Память течет из-за кривых рук и не знания языка.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 07:13 
Ну у меня память в гошке не течет и расходуется слабо, в сравнении со всякими пхп и питонами, так вообще копейки.
Синтаксис языка божественен, его не любить можно только пока не начал писать, через три месяца работы на нем я понял, что нашел язык мечты и только дженериков не хватает...
А успех объясняется просто: gc, компилируемый, удобная многопоточность, кроссплатформенный, низкий порог входа, быстрая разработка (time to market ниже), активно развивается.

"Релиз языка программирования Go 1.16"
Отправлено анонимз , 18-Фев-21 07:27 
В Python всё объекты и в этом проблема когда, к примеру, строк тьма. Поэтому ацкие тормоза и аллокатор память жрет. Python не плох для консольных небольших утилит.

"Релиз языка программирования Go 1.16"
Отправлено Gemorroj , 18-Фев-21 16:19 
хайп вокруг го объясняется только тем, что за ним гугель стоит.

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 11:01 
> ... И даже если бы все поделки на го не жрали память
> как не в себя (уверен, где-то есть волшебные настройки, но пока
> не могу понять где, впрочем, уже ненужно), ...

Go жрёт память?!.... Сходил сейчас проверил -- не жрёт. Дальше можно не читать.
Ах да: тебе инструмент нужен от кривых рук? pprof! Пользуйся на здоровье.
После гошечки я обратно на питон не хочу. А от С++ с самого начала тошнило.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 02-Мрт-21 16:10 
> Go жрёт память?!.... Сходил сейчас проверил

Точно, оно добавляет памяти, вот было 4 гига, теперь 5, еще позапускаю чтоб стало 16 гигов и на апгрейде съекономлю.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 17-Фев-21 22:14 
Кстати! Кстати, пацаны, тока что вспомнил - ведь mongoimport на гошке, а я им недавно пользовался и вот что получается. Импорт бэкапа размером 3.5 гига отжирает ровно столько же гигов оперативки. Я демо-аплаенс виртуалбоксовский делал чтоб клиент заценил у себя на локалхосте все прелести нашего супермегапродукта. Четыре гига оперативы для виртуалки вполне хватало и для mongodb, и для мегасистемы, и еще свободно полтора гига оставалось. Но для cpaных монговских тулзов на гошке, тупо чтобы импортнуть базу, понадобилось еще подключить своп 8 гиг. Я чесслово в тот момент позавидовал майэскюэльшикам. А мне еще по плану делать импорт данных за месяц, а не за два дня как в данном случае. Сколько оперативы жрать будет? Очкую заранее.
В курсе вас держать не буду, есть более важные дела.

"Релиз языка программирования Go 1.16"
Отправлено Sw00p aka Jerom , 18-Фев-21 01:35 
>Я чесслово в тот момент позавидовал майэскюэльшикам

а че тут завидовать, там ваще беда с версией 5.7, при банальном mysqldump с удаленного сервера, mysql сервер начинает отжирать память и не высвобождать, через пару дней таких бекапов и свопа нет, а дальше самизнаетечто. На 5.6 такого не замечал. Кто сталкивался?


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 03:42 
Расскажите пожалста, как кривые руки автора утилиты (который на любой файл решил делать ReadAll) делают язык плохим?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 07:16 
Тсс, он не понимает, что это разное!
Это же просто хейтер, ему только поводы нужны.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 18:31 
Рассказываю: плохой язык притягивает к себе кривые руки.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 21:59 
> Рассказываю: плохой язык притягивает к себе кривые руки.

Эк вы ... смело ... о Божественных Плюсах и Великой Сишечке высказались!



"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 04:11 
Столкнулся с тем что моя программа на go выполняется относительно медленно, посмотрел профилировщиком и увидел что 90% времени занимает crypto/sha256 чего по логике не должно бы быть. Кто нибудь знает что то про это? Буду искать аналогичную функцию но не из пакета crypto/sha256

"Релиз языка программирования Go 1.16"
Отправлено анонимррр , 18-Фев-21 07:32 
Сам crypto/sha256 или выделение буферов памяти на каждую итерацию?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 08:21 
профилировщик пишет: crypto/sha256.block. у меня используется sha256 но ее доля мне кажется должна быть на уровне 0.1%, а тут жесточайшие тормоза и такой выхлоп профилировщика. попробую использовать альтернативную реализацию sha256

"Релиз языка программирования Go 1.16"
Отправлено Shtiric , 19-Фев-21 10:55 
Какой-то бред sha256 вообще давно аппаратно ускоренное и уже давно есть в процах.  

"Релиз языка программирования Go 1.16"
Отправлено Shtiric , 19-Фев-21 10:57 
https://github.com/minio/sha256-simd
вот это посмотрите

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 15:53 
да спасибо сам находил это, там оптимизация под AVX.
но дело в том что тормоза на проце который AVX не поддерживает.
буду писать модуль на С, у меня там криптография и лучше я в C заюзаю openssl

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 02-Мрт-21 15:27 
вообщем в результате даже на чистом C не такой уж большой выигрыш, я отказался от этого алгоритма и резко ускорился

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 11:03 
> Столкнулся с тем что моя программа на go выполняется относительно медленно, посмотрел
> профилировщиком и увидел что 90% времени занимает crypto/sha256 чего по логике
> не должно бы быть. Кто нибудь знает что то про это?
> Буду искать аналогичную функцию но не из пакета crypto/sha256

pprof запускать не пробовал?


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 22:39 
Пробовал. Буду на C писать модуль для golang

"Релиз языка программирования Go 1.16"
Отправлено acroobar , 19-Фев-21 12:22 
Лучше модуль для Nim.

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 26-Фев-21 09:22 
И получишь дикий оверхэд на сисколы и единое бутылочное горлышко для взаимодействия с С.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 07:37 
Никогда не понимал популярность этого языка. Производительность, как у Java, а фич даже меньше, чем в ней. Современные программисты уже настолько деградировали?

"Релиз языка программирования Go 1.16"
Отправлено анононим , 18-Фев-21 08:52 
так Go упрощенная версия C:) C самый популярный не ООП язык.
> Производительность, как у Java,

даже если это так. спорить не стану :) то написать на Java нужно намного больше кода чтобы реализовать тоже самое на Go или Python. но Python из-за GIL выполняет программы однопоточно. здесь Go выигрывает из-за простоты goroutines которые еще и намного легковеснее потоков. в Go любопытный планировщик. и памяти нужно намного меньше чем Java программам. есть версия для микроконтроллеров TinyGo


"Релиз языка программирования Go 1.16"
Отправлено PnD , 18-Фев-21 10:20 
Сделать что-то "инфраструктурное" за приемлемый срок.
Те же поделия на java надо как-то сопровождать.
* Я даже слегка подозреваю, что… как бы сказать… каминг-аут с python 3.x проспонсировал google. Потому что "наглая рыжая морда".

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 11:05 
> Никогда не понимал популярность этого языка. Производительность, как у Java, а фич
> даже меньше, чем в ней. Современные программисты уже настолько деградировали?

Чо? Как у Java?))) Ну мне ты можешь не рассказывать, сынок. Ага. Ещё расскажи про конкурентность/мультипоточность, нативность и пожирание памяти))
А уж скорость написания кода и возможность читать его ( САМОЕ ГЛАВНОЕ) -- ой не в пользу второго языка. Молод ты ещё, не понимаешь сколько стоит труд разработчика.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 12:24 
Мань, у Go практически такая же производительно, а вот памяти он потребляет меньше, да. Ты лучше, прежде чем свои скобочки высирать, посмотрел бы бенчмарки.

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 18-Фев-21 15:14 
> ... а вот памяти он потребляет
> меньше, да. Ты лучше, прежде чем свои скобочки высирать, посмотрел бы
> бенчмарки.

Чушь на постном масле. Хотя бы на том основании, что Ява выделяет виртуальную память процессам в своей памяти. Управление локальной памятью относительно суперлокальной памяти процессов -- это явно дороже, чем прямая работа с кучей. Учи матчасть, сынок. Вот тебе небольшенький пруф:

https://benchmarksgame-team.pages.debian.net/benchmarksgame/...

Разница в потребляемой памяти 12...16 раз. Если бы ты ко мне пришёл на собеседование -- я бы тебя не взял. Ни на Яву, ни на Го.



"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 16:09 
Ты мой пост вообще читал, дурачек? По твоей же ссылке видно, что скорость выполнения почти такая же, где-то го быстрее, где-то джава. А вот памяти го потребляет меньше, что я и написал в своем прошлом посте.

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 22:52 
Ржу я над вами, собеседователями. Сидишь сам по себе, имеешь профит, но скучно же. В люди хочется. Бабло значения не имеет, но собеседователи такие все из себя такие, корчатся за недопущение тебя до должности которая стоит 30% того, что имеешь. Да ну вас всех в баню.

"Релиз языка программирования Go 1.16"
Отправлено Жора Фосген , 19-Фев-21 03:26 
>корчатся за недопущение тебя до должности

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


"Релиз языка программирования Go 1.16"
Отправлено acroobar , 18-Фев-21 15:30 
Когда гугл хром уже перепишут на go?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 17:20 
Это сколько терабайт памяти надо будет чтоб рендерить опеннет хотяб ? лол, максимум обвертка от сурла и тутже умирать чтоб память освободить, на большее "это" не способно.

"Релиз языка программирования Go 1.16"
Отправлено Брат Анон , 26-Фев-21 09:25 
> Когда гугл хром уже перепишут на go?

ЗАЧЕМ? Что, больше не чем заняться? Ты ходилку с ржавым не перепутал, земляк?


"Релиз языка программирования Go 1.16"
Отправлено acroobar , 26-Фев-21 09:47 
google chrome на го, firefox на раст, не?

"Релиз языка программирования Go 1.16"
Отправлено acroobar , 26-Фев-21 23:07 
Goмики vs педеrustы, не?

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 20:18 
Почитал разные ветки комментариев, стало грустно.

Ну, товарищи, вряд ли кто-то говорит про "вытеснить Java" или "вытеснить Python" абстрактно, зачем такое вообще обсуждать. А вот с тем, что в качестве языка написания микросервисов Golang во многих случаях вполне себе теснит другие варианты, спорить уже давно невозможно. Это не "небольшой прирост производительности", на Go вы можете писать нагруженные сервисы, в отличие от Python. В топовых компаниях разработчики выбирают писать бэкенд на Go не от того, что никто Python не знает. И это ни в коем случае не наброс на Python, у языка просто другие области эффективного применения (привет, ML и DS). Не верится, что приходится такое проговаривать.

Побуду тут адвокатом дьявола немного. Дело не в том, что Go "обижают". Расстраивает не критика, которой вполне есть место и которую познавательно читать, а то, что на opennet обсуждение порой ведётся на уровне "devops-тулзов" и "вебнявых поделок".

Больше всего в комментариях писали про память.

https://blog.golang.org/go15gc - вот реклама сборщика мусора Golang, там же ссылка на совсем короткий доклад с GopherCon Рика Хадсона про сборку мусора, который интересно глянуть, даже если вы никогда не собираетесь писать на Go.

https://blog.plan99.net/modern-garbage-collection-911ef4f8bd... - а вот другой взгляд на вещи, с нормальной, адекватной критикой этой го-пропаганды. А не "ой, k8s - поделка, по мне так много памяти ест для таких задач".

Сборщик мусора у Golang изначально задумывался (и переписывался) именно исходя из идеологии обеспечения реалтаймовости. Пусть декларируемый разработчиками Go великий мировой "breakthrough" в построении GC звучит и явно громковато, но справедливо то, что именно они были наиболее успешны в вопросе минимизации длительности отдельных пауз.

И пусть пока куда чаще мы видим использование языка именно для "инфраструктурных" задач и для написания сервисов, перед нами всё же компилируемый язык вполне себе общего назначения. На Golang вы можете создавать не только нагруженные сервисы, но и реализовать СУБД или написать userspace-драйвер.

Очевидно, везде есть рамки адекватной применимости. И, да, в итоге в той же Фуксии Go оставили только в сетевом стеке - странно, что ненавистники языка не припомнили это, а просто "где-то слышали". Но надо понимать, что Go конкурирует в таком контексте с C, C++ и Rust, а не с Java или, тем более, Python.

Относительно недавно здесь же проскакивала новость по теме, сравнение производительности сетевого драйвера в вариантах на 10 языках программирования: https://www.opennet.dev/opennews/art.shtml?num=51475

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


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 18-Фев-21 22:47 
Нет, все-таки сишка - это круче гошки когда надо на минимальных ресурсах максимум отдачи. Пройденный этап для меня. Конечно, мнение субъективно, и, например, на серверах с минимумом 128GB оперативки я 10 лет не заморачивался с тем же mongorestore. Но как правильно сказал один чел, - дешевизна железа - это миф. И когда надо сделать рабочий вариант хренотени на минимальных ресурсах - вот тут-то и затык. А минимальные ресурсы - они повсеместно сейчас. Для кое-чего, если сумеете выжать из них нужное - будет профит. Ну вы поняли. Надеюсь.

"Релиз языка программирования Go 1.16"
Отправлено Витя Терминатор , 19-Фев-21 03:43 
>А минимальные ресурсы - они повсеместно сейчас. Для кое-чего, если сумеете выжать из них нужное - будет профит

Банановые/снежные бантустаны в которых рабы пашут за копейки != повсеместно.
В странах первого мира затраты на разработку и поддержку многократно превышают затраты на железки. Именно поэтому создаются языки "с человеческим лицом", всязкие автоматизации, CI/CD, облака и прочее.
Вот в бантустанах - да, можно снять пару цехов старого завода, сделать говноремонт, посадить туда 300 писак на асме и сях, дать им в поддержку 15 бородатых админов которые будут вручную настраивать все с нуля и писать десятилетиями в овертаймы велосипеды на баше с перлом. И платить им всем копейки. Ну и самый дешевый чай в пакетиках не забыть в офис конечно же =).

>серверах с минимумом 128GB оперативки я 10 лет не заморачивался с тем же mongorestore. Но как правильно сказал один чел, - дешевизна железа - это миф.

Ну так найми человека который перепишет mongorestore для тебя. И потом сравни сколько ты потратил на разработку и сколько бы ты потратил просто докинув памяти на сервер. Будешь приятно удивлен.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:32 
> В странах первого мира затраты на разработку и поддержку многократно

Украина, я еду, завали меня дешевыми железками и бесплатным электричеством !


"Релиз языка программирования Go 1.16"
Отправлено alex312 , 19-Фев-21 11:27 
"дешевый" и "дешевле" - это разные слова и про разное.

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


"Релиз языка программирования Go 1.16"
Отправлено Аноним12345 , 19-Фев-21 10:47 
Гоу захавывает мир

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 10:55 
угу, все эти бессильные выс3.ы от копрораций потом назовут предсмертной гонкой лучших езыков программирофания. умора

"Релиз языка программирования Go 1.16"
Отправлено alex312 , 19-Фев-21 11:34 
ой умора, что ж тебе не зашел продукт Вирта? а жрешь выхлоп корпорации AT&T ?

так вот проглотил один выхлоп корпорации, проглотишь и другие, и спасибо скажешь.


"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 17:32 
Это не вспышка на солнце, это знатно загорелось у любителя вирта с атэтэ и прочей копры ^_^

"Релиз языка программирования Go 1.16"
Отправлено Аноним , 19-Фев-21 20:23 
Розоволосые дефачки потекли... всьо C++ хана

"Релиз языка программирования Go 1.16"
Отправлено анононим , 26-Фев-21 11:22 
https://fyne.io/ toolkit для Go GUI приложений