|
2.68, RomanCh (ok), 12:18, 02/02/2023 [^] [^^] [^^^] [ответить]
| +5 +/– |
А там всю команду уволили, или только массовиков-затейников с развитыми мягонькими навыками и высоким "эмоциональным интеллектом"?
| |
2.124, Аноним (124), 18:39, 02/02/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Руководство Гугла - не эксцентричный Маск, дойную корову никто выгонять не будет. Внутри Гугла слишком много всего завязано на golang. Там люди прагматичные. В первую очередь под нож пойдут розовые пони, набранные ради diversity, экономическая польза от которых отрицательна.
| |
|
|
2.69, RomanCh (ok), 12:19, 02/02/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Для микроконтроллера можно скомпилировать?
Даже для Lego конструктора можно.
| |
|
1.37, Аноним (37), 11:58, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +9 +/– |
Го отличный язык при разумном применении.
Раст отличный язык при разумном применении.
| |
|
2.39, Аноним (1), 12:01, 02/02/2023 [^] [^^] [^^^] [ответить]
| +8 +/– |
X_PROGRAMMING_LANGUAGE отличный язык при разумном применении.
| |
|
3.74, Аноним (74), 12:31, 02/02/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
brainfack отличный язык при разумном применении.
yoptascript отличный язык при разумном применении.
HQ9+ отличный язык при разумном применении.
| |
|
|
1.51, Аноним (51), 12:10, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –7 +/– |
Го с растом сравнивать как-то бредово. Они для разного. Но вместе они заменят плюсы. Го в веб-бэкэнде, раст - в системном программировании.
| |
|
|
3.115, Анонус (?), 17:36, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
ЧятГПТ скоро перепишет. Уверен через год-два появятся инструменты транспайлинга с любого языка на любой.
| |
|
4.118, ihatenpm (?), 17:57, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
И прикол кстати в том, что может быть наоборот он будет полезен в переводе с макак-языков на более быстрые, с просчётом всяких неуязвимостей.
| |
|
5.153, Аноним (153), 07:28, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Например, пишешь на модном расте, потом транспайлишь в классический си с сохранением гарантий безопастности. И все довольны.
| |
|
|
3.165, Советский инженер (?), 10:04, 03/02/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Никто, конечно, не будет переписывать проекты которым по 20 и более лет.
Раст выбрал другую стратегию: embrace, extend, and extinguish.
Раст закрепился в файрфоксе, пролез в ядро, его одобрили для использования в хроме. Он уже в месе и гстимере. И т.д и т.п.
| |
|
2.208, Аноним (207), 22:54, 06/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Не могу себе представить системное програмиирование на языке, hello world которого весит 10 Мб
| |
|
1.65, RomanCh (ok), 12:17, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
> В пакет unsafe добавлены функции SliceData, String и StringData для низкоуровневых манипуляций со срезами (массивы фиксированной длины)
Срезы, это "массивы" динамического размера, т.е. это достаточно низкоуровневая абстракция над массивами. А вот массивы в Go как раз имеют фиксированный размер.
Отправил правку в статью.
| |
|
2.123, pashev.ru (?), 18:29, 02/02/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Срезы, это "массивы" динамического размера
Во-первых, не запятая, а тире. Во-вторых, размер ни разу не «динамический». Можно создавать несколько срезов разных размеров, но не срез «динамического» размера.
Отправил в биореактор.
| |
|
3.128, RomanCh (ok), 18:55, 02/02/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Во-первых, не запятая, а тире. Во-вторых, размер ни разу не «динамический». Можно
> создавать несколько срезов разных размеров, но не срез «динамического» размера.
Ну, с таким знанием предмета, вам только и остаётся, что до пунктуации докапываться.
Просвещайтесь, вот тут для самых маленьких: https://go.dev/tour/moretypes/7
> A slice, on the other hand, is a dynamically-sized, flexible view into the elements of an array.
А тут для тех, кто постарше: https://go.dev/src/runtime/slice.go
Замечу, что фраза "низкоуровневая абстракция" была написано выше не просто так.
PS Забавно, что ваш предыдущий бессмысленный комментарий удалили, но вы не сдаётесь и пытаетесь родить что-то более осмысленное. Комплексы?
| |
|
|
5.133, pashev.ru (?), 19:56, 02/02/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Поясню: изменение полей структуры это не изменение размера структуры.
И да, бардак в голове проявляется и в пунктуации.
| |
|
4.170, QrKot (?), 19:42, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
≥≥ Ну, с таким знанием предмета, вам только и остаётся, что до пунктуации докапываться.
Мэн, сорян, конечно, но в этот раз не он о бо ср ался, а ты(
≥≥ A slice, on the other hand, is a dynamically-sized, flexible view into the elements of an array.
И переводится это так: Слайс, с другой стороны - гибкое представление элементов массива динамической длины.
Короче, поясню: Слайс - обёртка над массивом. Он имеет длину, вместимость (капасити) и нижележащий массив. Капасити - константна, т.е. Слайс НЕ УМЕЕТ в ресайз. append при превышении капасити создаёт НОВЫЙ слайс, а не изменяет ресайзит текущий.
| |
|
5.209, Аноним (207), 22:56, 06/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ошибаетесь, append не всегда будет выделять новый слайс. А если и будет, то "зарезервирует запас"
| |
|
|
|
2.127, Аноним (-), 18:50, 02/02/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
"Фиксированный размер" и "статически фиксированный размер" -- это разные вещи. Ты не можешь изменить размер слайса. Если в слайсе три элемента, ты не можешь добавить туда ещё один, чтобы их стало четыре.
| |
|
|
4.130, Аноним (-), 19:35, 02/02/2023 [^] [^^] [^^^] [ответить]
| –3 +/– |
> И откуда вас таких выпустили?
Из вуза, после того, как мы честно свой диплом отработали.
Откуда ты такой вылез неясно.
Глянь на эту запись:
s = append(s, 2, 3, 4)
Ты видишь "функциональность" этого append'а? Он не меняет переданный ему слайс, он возвращает новый слайс, созданный на основе s и остальных аргументов.
Функциональное программирование, ты слышал про него? Есть разница между императивным API вида s.append(2, 3, 4), которое подразумевает изменение s, и функциональным, которое изменения не предполагает, которое вместо изменений существующих объектов создаёт новые объекты.
| |
|
5.132, RomanCh (ok), 19:49, 02/02/2023 [^] [^^] [^^^] [ответить] | –1 +/– | Ну то есть, будучи пойманным на глупости, остаётся только перевести разговор на ... большой текст свёрнут, показать | |
|
6.171, QrKot (?), 19:58, 03/02/2023 [^] [^^] [^^^] [ответить] | +/– | Мэн, вам вдвоем с оппонентом надо таки в доку внимательно заглянуть Слайс таки ... большой текст свёрнут, показать | |
|
7.174, RomanCh (ok), 22:19, 03/02/2023 [^] [^^] [^^^] [ответить] | –1 +/– | Аа, ну вот и объявился человек, который весь в белом пальто красивый, а все оста... большой текст свёрнут, показать | |
|
|
9.181, RomanCh (ok), 11:42, 04/02/2023 [^] [^^] [^^^] [ответить] | –1 +/– | Нда Либо вы не умете считать до двух, т к смотреть надо было ВТОРУЮ ссылку, ... большой текст свёрнут, показать | |
|
8.205, Аноним (205), 09:10, 06/02/2023 [^] [^^] [^^^] [ответить] | +/– | Попробуй, ну, я даже не знаю, ковырнуть исходник и посмотреть что такое слайс и ... текст свёрнут, показать | |
|
|
|
5.138, Neon (??), 21:50, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Функциональность - новая мода, с которой все носятся как дурни с писанной торбой
| |
|
6.141, morphe (?), 22:15, 02/02/2023 [^] [^^] [^^^] [ответить]
| +4 +/– |
В отличии от языков с нормальным дизайном, разработчики golang решили сделать чтобы слайс работал как вектор, и футганов тут дофигища.
package main
import "fmt"
func main() {
a := []int{0}
for i := 0; i < 40; i++ {
b := append(a, 0)
a[i] = 1
fmt.Printf("%d ", b[i])
a = b
}
}
→ 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
| |
|
|
8.146, morphe (?), 03:34, 03/02/2023 [^] [^^] [^^^] [ответить] | +/– | Человек написал что append в golang функциональный, и исходный буфер не трогает ... большой текст свёрнут, показать | |
|
9.173, QrKot (?), 21:20, 03/02/2023 [^] [^^] [^^^] [ответить] | +/– | если места нет - то создаёт новый слайс, в котором в 2 раза больше места Прост... большой текст свёрнут, показать | |
|
10.177, morphe (?), 06:49, 04/02/2023 [^] [^^] [^^^] [ответить] | +/– | Я пример кода скинул, который демонстрирует это Нули на позициях 2,4,8,16,32, им... большой текст свёрнут, показать | |
|
11.211, qrKot (?), 10:57, 07/02/2023 [^] [^^] [^^^] [ответить] | +/– | Просто в качестве занудства это только до 256 элементов в массиве Дальше прира... большой текст свёрнут, показать | |
|
|
|
|
|
|
5.172, QrKot (?), 20:04, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
При чем тут, простите, функциональное АПИ? Слайс к функциональщине не имеет никакого отношения, ну вообще никакого, он императивный в хлам.
А запись такая потому, что таки да, Слайс не умеет ресайзиться, Слайс вообще есть грязный хак по своей природе. В функциональном подходе за такое по рукам бьют.
≥≥ Он не меняет переданный ему слайс, он возвращает новый слайс, созданный на основе s и остальных аргументов
Ну вот неправда же. Он МЕНЯЕТ переданный ему Слайс, именно меняет. А в случае, если капасити слайса не хватает, создаёт новый, чтобы дописать то, что в старый не влезло.
А уже потом возвращает либо переданный Слайс, если влезло, либо новый, если в старый не поместилось
| |
|
6.204, Аноним (204), 00:46, 06/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
https://bluxte.net/musings/2018/04/10/go-good-bad-ugly/#slice-gotchas
В go слайсы это полный треш, нихрена не такие удобные как их хорошо пропиарили, да и вообще языку нужны нормальные типы контейнеров, нормальный синтаксис для классов (можно хоть не вводить this). Они бы могли базироваться на llvm как rust, но в те древние времена в llvm не было сигментмрованного стека. Рефлексии для приватных объектов нет. Если написать свой тип данных то вся type safety исчезает. В одном его рантайме целый вагон различных моментов где можно словить panic. По сути нужно знать дофига моментов почему тут нужно делать не так, а вот здесь nil не nil. Абсолютно такие же "мелкие ляпы" там сям есть и в nim.
| |
|
7.210, qrKot (?), 10:10, 07/02/2023 [^] [^^] [^^^] [ответить] | +/– | В Go слайсы - это дескриптор непрерывного сегмента нижележащего массива, предос... большой текст свёрнут, показать | |
|
|
|
|
|
|
1.83, Старший аноним (?), 13:10, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
В блоге есть, в статье пропущено:
Начиная с версии Go 1.21 не будет больше работать на Windows 7,8 и соответствующих им Windows Server 2008, 2012.
За Windows 7 жалко - многие ее еще используют как для домашнего использования, так и для разработки.
| |
|
|
3.87, Старший аноним (?), 13:38, 02/02/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Конечно, это же не Windows 10 c телеметрией "ис каропки". А чо - стальна, модна, маладежно. Так?
| |
|
4.88, анон (?), 13:49, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Телеметрия или 0-day эксплоиты для неподдерживаемой ос, что же выбрать старшему анону в этой непростой ситуации?
| |
|
|
6.101, анон (?), 14:34, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Удобно так думать, с такой логикой можно вообще наплевать на безопасность. А чо, кому я нужен-то, верно?
| |
|
7.110, Аноним (110), 15:57, 02/02/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Так и писать тогда можно на любом языке безопасность же не нужна.
| |
|
|
|
4.114, leap42 (ok), 17:06, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Конечно, это же не Windows 10 c телеметрией "ис каропки". А чо
> - стальна, модна, маладежно. Так?
Нет, не так. Я уже 15 лет виндой не пользуюсь. Но вместо 7-ки взял бы 10-ку из-за WSL. Всю телеметрию из 10-ки кстати обновлениям встроили и в 7-ку ЕМНИП.
| |
|
5.148, OpenEcho (?), 03:51, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Но вместо 7-ки взял бы 10-ку из-за WSL
А ты не пробовал WSL пользоваться то взрослому, как на никсах?
| |
|
6.152, leap42 (ok), 04:58, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
>> Но вместо 7-ки взял бы 10-ку из-за WSL
> А ты не пробовал WSL пользоваться то взрослому, как на никсах?
Нет, я же уже лет 15 виндой не пользуюсь. Но я имел опыт с pussy.exe и попытал бы счастья с WSL.
| |
|
|
|
3.95, ihatenpm (?), 14:08, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Я на виртуалке запускаю, когда надо виндо-специфичное, т.к. она легковеснее, и в отличие от 11 не 5 FPS как в анимэ
| |
|
4.96, Аноним (96), 14:16, 02/02/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
10 легковесней раз в 100, попробуй тот билд для банкоматов там практически весь мусор изкоробки отключен.
| |
|
|
6.122, Аноним (96), 18:15, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Я имею в виду не васяносборку. Но МС её не продаёт в ритейле, она оемная. Кмс-активатор с ней работал по-моему, так что апдейты были.
| |
|
|
|
|
|
1.97, Аноним (97), 14:22, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> Подобные загрузки выполняются независимо от выполнения пользователями "go get" и создают большую нагрузку на серверы
Слабо рейтлимитер вкрутить?
| |
|
|
3.125, www2 (??), 18:40, 02/02/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Так это держателям веб-сервиса надо было самим сделать. А так получается, что после этой новости кто угодно сможет чисто ради прикола положить их сайт. Проблема же не ограничивается одним только криво сделанным go.
| |
|
4.135, Аноним (24), 20:07, 02/02/2023 [^] [^^] [^^^] [ответить]
| +4 +/– |
Т.е. надо сделать как в npm единую помойку, которую условно сложно положить?
| |
4.142, Аноним (100), 22:57, 02/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Так это держателям веб-сервиса надо было самим сделать.
Кстати да, почему-то другие хостинги, включая живущие исключительно на поддержку пользователей, сильно не жалуются. Может быть, ДеВольту стоило лишь порою возвращать на их запросы 304 Not Modified?
| |
|
|
|
1.126, Аноним (126), 18:40, 02/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Проблема была связана с тем, что при выполнении команд, таких как "go get", импорт модулей из внешних репозиториев осуществляется не напрямую...
Так пусть напрямую выполняется, а если указано GO_PROXY импортируется через какой-то прокси, а то выдумали своим инструментом вылавливать пакеты в том числе и из приватных источников. Я щитаю, что если пользователь хотел бы разместить пакет, то он бы взял и разместил, а тту на лицо какое-то толи жульничество, толи развед действия.
Идея язычка пропихнуть в базовые типы slice, map и т.д. напрашивается, но давайте спросим честно, что даст Golang когда эти типы наконец-то IEEE протащит в стандартную stdc библиотеку?
Вообщем какой-то подмножество языка непонятно зачем нужное да еще и с зондами из коропки
| |
|
2.134, Аноним (24), 20:06, 02/02/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Давай по-порядку
1) Go простой
2) Go безопасно работает с памятью
3) Go быстрее питон чего достаточно
Больше ему ничего не надо. Отсутствие гарбеджколлектора это плюс к простоте. Запиши в блокнотик заучивай каждый день.
| |
|
|
|
5.169, Аноним (169), 18:04, 03/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Но ты им себе имеешь, когда привет энтерпрайз и хайлоад с конским RPS. Как-нибудь чекните докладчиков из Wildberries/Avito, как они увлекательно сидят профилируют, чтобы в узких местах писать сервачки в garbage free стиле, чтобы свести к минимуму stop-the-world сборщика мусора и поменьше аллоцировать в куче принципе.
| |
|
|
|
|
1.155, Аноним (155), 08:13, 03/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Самого вкусного в новости нет. Теперь можно врапать несколько типов ошибок... И выкинуть наконец-то сторонние библиотеки.
| |
1.164, анонимит (?), 10:02, 03/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
"Синтаксис Go основан на привычных элементах языка Си с отдельными заимствованиями из языка Python." и Pascal 🤭 C++ с модулями имеет схожий подход
| |
1.168, Аноним (168), 16:56, 03/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Go безопасный язык? Угу если не пользоваться библиотеками обёртками над си кодом, в которых тонны gc keepalive. А еще целый вагон не однозначно себя ведущих стандартных функций, прямо как в nim. Зато IDE для него очень шустрые да. В отличие от С++ которые зависят от clangd который тот еще тормоз.
| |
1.179, vadiml (ok), 10:18, 04/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> с отдельными заимствованиями из языка Python
Питоном, к счастью, в нём и не пахнет, зато авторы говорили, что "заимстования" из Оберона, который врос из паскаля.
| |
1.186, anonbrain (?), 14:24, 04/02/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
достаточно бредовый язык. делал сравнения для оценки производительности, так вот он всего в полтора раза быстрее последних версий PHP, но это абсолютная шляпа, учитывая что он вобще то компилируемый. короче на помойку его, используйте C/C++
| |
|
2.203, Аноним (169), 15:28, 05/02/2023 [^] [^^] [^^^] [ответить]
| +/– |
Делать энтерпрайзу нечего, как микросервисы на C++ пилить для задач, которые в I/O упираются, а не вычисления. Go дубовый и прямолинейный, код плоский и очевидный, дебажить просто, но ценой многословности. По совокупной стоимости владения проект на гошке обходится в разы дешевле какой-нибудь джавы или С# или, тем более, С++.
| |
|
|