The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Go 1.22"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Go 1.22"  +/
Сообщение от opennews (??), 07-Фев-24, 10:20 
Представлен релиз  языка программирования Go 1.22, который развивается компанией  Google при участии сообщества как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок.  Код проекта распространяется под лицензией BSD...

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

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

2. Сообщение от Аноним (2), 07-Фев-24, 10:25   +3 +/
Посмотрел на синтаксис Go, и что-то я не заметил каких-то схожестей с Си

Что именно там "Синтаксис Go основан на привычных элементах языка Си"?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #7, #19, #21, #33, #34, #47, #103, #164, #191

3. Сообщение от Аноним (3), 07-Фев-24, 10:26   –7 +/
А если какой-нибудь индус забросит проект , от которого зависят другие проекты . То мой хелоуворд не соберется ?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8, #109, #213

4. Сообщение от Аноним (7), 07-Фев-24, 10:26   +1 +/
До сих пор базовые проблемы фиксят. Этот язык ещё на стадии альфы или уже релиз?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #27

5. Сообщение от Аноним (-), 07-Фев-24, 10:26   +4 +/
> Решена давняя проблема с циклами "for", приводившая при вызове сопрограмм (goroutine) к совместному использованию переменных цикла в разных итерациях.

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

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #11, #32, #185

6. Сообщение от Аноним (3), 07-Фев-24, 10:26   +1 +/
Чтобы собрать хелоуворд , сколько гигабайт надо ?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #9, #14, #111, #152

7. Сообщение от Аноним (7), 07-Фев-24, 10:27   +12 +/
Синтаксис Go - это кошмарная солянка синтаксисов кучи языков.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #17, #26, #88

8. Сообщение от Аноним (7), 07-Фев-24, 10:28   –9 +/
Go - это как недопитон, только со статической типизацией.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #15

9. Сообщение от Аноним (7), 07-Фев-24, 10:29   +/
Так-же как на джаве, может даже немного экономнее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #13

10. Сообщение от Аноним (3), 07-Фев-24, 10:29   +/
> позволяет добиться производительности, сопоставимой с программами на языке Си

В рекламных роликах не принято сравнивать достоинства товара A и товара B другой фирмы .

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12

11. Сообщение от Аноним (7), 07-Фев-24, 10:29   –5 +/
Язык всё больше и больше мне кажется мертворождённым.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #16, #99

12. Сообщение от Аноним (7), 07-Фев-24, 10:31   +5 +/
> позволяет добиться производительности, сопоставимой с программами на языке Си

**при вызове библиотек, написанных на Си
XD

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

13. Сообщение от Аноним (3), 07-Фев-24, 10:32   +/
У меня однажды на сервере пропала директория с джава . С тех пор я не могу его использовать .
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

14. Сообщение от Аноним (14), 07-Фев-24, 10:34   +/
0.058
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

15. Сообщение от Аноним (3), 07-Фев-24, 10:35   +2 +/
Go - это как Google !
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #69, #170

16. Сообщение от Аноним (16), 07-Фев-24, 10:38   +15 +/
икспертиза опеннет
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #23, #89

17. Сообщение от Аноним (17), 07-Фев-24, 10:39   +7 +/
А у раста?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #25, #44

18. Сообщение от Маня (?), 07-Фев-24, 10:41   +2 +/
почему код:
values := []string{"a", "b", "c"}
      for _, v := range values {
           go func() {
               fmt.Println(v)
              done <- true
           }()
      }
будет выводить abc а не cba? нет же гарантий порядка выполнения горутин. просто теперь не будет повторений.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #29, #106, #134, #141, #187

19. Сообщение от Аноним (19), 07-Фев-24, 10:41   +1 +/
на структуры там много чего завязано, надо ее обьявить, а дальше использовать, со стандартными типами переменных работать тяжело, конвертить строки в массив байтов и обратно укантрапупишься, да и вообще половина кода это приведение типов
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #31, #131

20. Сообщение от Аноним (20), 07-Фев-24, 10:44   +/
> для перебора значений с 0 до 9 теперь можно использовать цикл "for i := range 10 {...}".

Удобный синтаксис для off by 1 ошибок.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #222

21. Сообщение от Аноним (21), 07-Фев-24, 10:47   +5 +/
- фигурные скобки для блоков
- * и & для работы с указателями
- Структуры и само слово struct
- Условие цикла for из трёх частей

Конечно, такое есть и в других языках, и это как раз и есть c-likе элементы, подсмотренные у Си.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

22. Сообщение от Аноним (22), 07-Фев-24, 10:48   +3 +/
Такой ощущение, что синтаксис for стараются сделать максимально непохожим ни на что другое и получается настолько криво, насколько это вообще возможно.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #74, #76

23. Сообщение от Аноним (23), 07-Фев-24, 10:48   +/
Так-то он прав, но у гулага бесконечные деньги (в частности, на рекламу) и живо оно будет до тех пор пока надо гулагу.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

25. Сообщение от Аноним (7), 07-Фев-24, 10:52   –2 +/
Rust самобытный и не Си-подобный от слова ни разу и не заявлялся таким. На него с Си-подобных языков не перепрыгнешь так просто. Зато он реально нормально работает.
У Go же в свю очередь вакханалия такая, что прикладные структуры данных реализованы на уровне языка и между списками и массивами синтаксис неадекватно плавает. Это дикость. Как это вообще имеет право на существование!?
От случая к случаю у него синтаксис то от С/Java, то от Delphi/Pascal, то от JS, то от Python, как будто его придумали обдолбаные наркоманы. Я понимаю когда язык существует не одно десятилетие и обрастает "обоснованным" синтаксическим сахаром. А тут как будто из других языков нахватали на старте, и существует это лишь благодаря хорошему компилятору и библиотекам с других языков.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #45, #63, #84

26. Сообщение от Хухрымухры (ok), 07-Фев-24, 10:53   +6 +/
Рекомендую глянуть доклад: Почему Golang такой странный / Филипп Кулин
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #48

27. Сообщение от Хухрымухры (ok), 07-Фев-24, 10:56   +3 +/
Это было сделано специально в угоду скорости. На практике оказалось что это создаёт больше проблем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #128, #151

29. Сообщение от Аноним (3), 07-Фев-24, 11:02   –5 +/
> values := []string{"a", "b", "c"}

Такое сложно читать человеку , он устает . Зачем пустые скобки ? Чтобы показать что это массив ? Человеку это зачем знать ? Зачем кавычки ? Непонятно , что a b c это не цифры , а текст ?
> go func() {

Это изобретения велосипедов .
Человек должен понять программу , просто прочитав ее . Вы же читаете этот текст .
Просто очень сложно такое читать
values := []string{"a", "b", "c"} for _, v := range values {go func() {fmt.Println(v) done <- true}()}

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #35, #37, #75, #133, #162

31. Сообщение от name (??), 07-Фев-24, 11:17   +9 +/
А вторая половина - проверки err на nil.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

32. Сообщение от Аноним (32), 07-Фев-24, 11:17   +/
Не понятно только для кого это было проблемой.
Вполне логичное поведение в подобной среде
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

33. Сообщение от Ананий (?), 07-Фев-24, 11:18   –1 +/
:=
необязательная ;

заменили скобками begin end, writeln на println, шоб уж совсем на паскаль не походить

ну и всё настолько типизированно, шо даже для указателей указывают тип, шо еще паскалистее чем сам паскаль.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

34. Сообщение от Аноним (168), 07-Фев-24, 11:23   +/
>Посмотрел на синтаксис Go, и что-то я не заметил каких-то схожестей с Си

Ну как же? Всё, где блоки кода скобочками "{ }", теперь считается основанным на привычных элементах языка Си.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

35. Сообщение от Аноним (35), 07-Фев-24, 11:24   +/
> Зачем кавычки ? Непонятно , что a b c это не цифры , а текст ?

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

Но в целом синтаксис ИМХО омерзителен. Конечно и на других языках можно писать стольже отвратительно выглядящий код но там надо стараться, а тут это судя по всему норма.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #39

37. Сообщение от Ананий (?), 07-Фев-24, 11:26   +/
>Непонятно , что a b c это не цифры , а текст ?

а если текст совпадет с зарезевированным словом? изобретать костыли?
а какое-нибудь а b c 0xFF d это что?

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #77

38. Сообщение от Карлос Сношайтилис (ok), 07-Фев-24, 11:28   +1 +/
Язык го как тестовая площадка для экспериментов с конструкциями оператора for
Ответить | Правка | Наверх | Cообщить модератору

39. Сообщение от Аноним (7), 07-Фев-24, 11:33   +/
Да, в GoLang этот синтаксис = норма.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

40. Сообщение от Аноним (40), 07-Фев-24, 11:35   +/
На Go после появления дженериков вполне можно писать, т.к. это убрало самые вопиющие моменты копипасты. Когда обработку ошибок сделают хотя бы в стиле Swift, тогда вообще будет норм. После джавы с ее annotation-driven development код на Go дебажить одинаково комфортно что у себя в проекте, что в кишках гошных фреймворков - он что там, что там формата "палка-веревка".
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #46, #57

41. Сообщение от cheburnator9000 (ok), 07-Фев-24, 11:43   –4 +/
Язык где вместо решения фундаментальных проблем в виде race condition вам предлагают race detector ... фу.

C#/.NET лучше, хоть и кушает для своей работы больше ОЗУ и ЦПУ в рантайме, но это дело поправимо, сейчас улучшают Ahead of Time компиляцию в нативный код, правда проблемы с рефлексией в этом деле еще не решили, но все будет.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #67, #81, #127, #160, #188

43. Сообщение от Аноним (-), 07-Фев-24, 12:04   +2 +/
Как вообще кому-то могла прийти мысль импортировать библиотеки прямо из интернета? Каждый import github.com/... - это дополнительная точка отказа.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #54, #83, #94, #126

44. Сообщение от Пряник (?), 07-Фев-24, 12:14   –1 +/
А у раста сразу несколько синтаксисов: 2015, 2018, 2021.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #52

45. Сообщение от Alexey (??), 07-Фев-24, 12:17   +/
По моему опыту на rust после С очень легко писать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #49, #51

46. Сообщение от Аноним (162), 07-Фев-24, 12:19   –3 +/
Кому как. Жители бангладешских деревень, которые не умеют читать и считают только используя пальцы рук и ног, плохо дженерики понимают. Понимают плохо, но используют охотно. В результате ПО на языках, в которых есть свои варианты шаблонов/обобщений, типично превращаются в обезьяну с гранатой.
Поэтому, на мой взгляд, добавление обобщений в Го было крайне спорным решением.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #90

47. Сообщение от flrdv (?), 07-Фев-24, 12:20   +/
возврат ошибок.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

48. Сообщение от anonymous (??), 07-Фев-24, 12:23   +6 +/
Веселый доклад.

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

"Вам не завидно, Балаганов? Мне завидно"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #200

49. Сообщение от Проходил мимо (?), 07-Фев-24, 12:28   +1 +/
Угу, то первого серьезного втыкалова с владением и разного рода временами жизни так оно и есть. А потом приходит понимание, что слово Rust и слова "Легко писать" не совсем соответствуют действительности.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #171

51. Сообщение от dullish (ok), 07-Фев-24, 12:30   +3 +/
По моему опыту, после С на чём угодно легко писать. Но зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #56

52. Сообщение от Проходил мимо (?), 07-Фев-24, 12:30   +3 +/
В чем принципиальная разница между синтаксисом 2018 и 2021?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #55, #70, #79

53. Сообщение от Аноним (56), 07-Фев-24, 13:21   +2 +/
Про то что си подобный пишут, а про то что нельзя выйти за границы буфера не пишут.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #59, #72

54. Сообщение от Аноним (56), 07-Фев-24, 13:22   –2 +/
Точка отказа у тебя в голове все зависимости должны быть в папке vendor.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #58

55. Сообщение от Аноним (56), 07-Фев-24, 13:30   +4 +/
В том что 2 сорта и кто-то в этом даже разбирается.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

56. Сообщение от Аноним (56), 07-Фев-24, 13:31   –1 +/
Экономия времени и денег?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #73, #149

57. Сообщение от 12yoexpert (ok), 07-Фев-24, 13:38   +1 +/
на языках, в которых шаблоны называют дженериками, в принципе невозможно писать

"Я не похож на все-ех, посмотрите на меня-а, я читал модные книжки оре-лли, ***тесь с нашей уникальной гениальной терминологией" - любой автор такого языка

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #71, #114, #159

58. Сообщение от похнапоха. (?), 07-Фев-24, 13:38   +4 +/
Он просто не знает, как работает импорт в Гоу, что такое модули и тд. Бесполезно спорить с ИКСпертом на оупеннет, лет 15 тут еще водились адекватные, которые владели знаниями в обсуждаемых темах. Теперь смузихлебы, которые знают 5+ ЯП и 15+ фреймворков, но толком ни в одном не разобравшиеся, поучают всех остальных. АйТи, которое мы заслужили.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54 Ответы: #62, #64, #95

59. Сообщение от 12yoexpert (ok), 07-Фев-24, 13:40   –3 +/
это же не раст
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #98

60. Сообщение от Alexey (??), 07-Фев-24, 13:47   –5 +/
Google компания делает дела. когда-то про нее много писали что "корпорация зла". но нет, она делает добрые дела. полезные. вот язык обновила.

так что, не надо ее ругать.

кто там главный в компании? Брин и еще второй. они делают полезное дело. обновляют язык.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #125

62. Сообщение от 12yoexpert (ok), 07-Фев-24, 13:59   –2 +/
один ты умный в белом пальто стоишь красивый. спасибо, что ты есть
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

63. Сообщение от alle (?), 07-Фев-24, 14:01   –2 +/
>Зато он реально нормально работает.

Да, но его ниша примерно нигде. где-то заменит си и то хорошо

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

64. Сообщение от Placeholder (ok), 07-Фев-24, 14:06   +2 +/
Да это даже не смузихлебы, это на 80% просто тролли сидят. У них и гит не нужен, и винда - самая лучшая ОС. В основном тупо копипастят одну и ту же фигню чтобы развести флейм.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #85

65. Сообщение от Аноним (65), 07-Фев-24, 14:07   +1 +/
Жаль gomobile забросили
Ответить | Правка | Наверх | Cообщить модератору

67. Сообщение от Аноним (67), 07-Фев-24, 14:17   +3 +/
Да-да, жава тоже уже скоро хорошей станет, с минуты на минуту.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

68. Сообщение от Аноним (69), 07-Фев-24, 14:18   +1 +/
Было слишком мало скобочек, но это исправляют.
Ответить | Правка | Наверх | Cообщить модератору

69. Сообщение от Аноним (69), 07-Фев-24, 14:21    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

70. Сообщение от НяшМяш (ok), 07-Фев-24, 14:34   +1 +/
Вот тут есть список изменений https://doc.rust-lang.org/edition-guide/introduction.html
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

71. Сообщение от anonymous (??), 07-Фев-24, 14:36   –2 +/
Понятно, что ты тролль, но для тех, кто случайно прочитает твой комментарий, я напишу, что шаблоны - это compile-time фича, а дженерики - рантайм.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #138, #154, #221

72. Сообщение от НяшМяш (ok), 07-Фев-24, 14:36   +/
Потому что можно https://github.com/advisories/GHSA-ppp9-7jff-5vj2
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #96

73. Сообщение от пух (??), 07-Фев-24, 14:38   +4 +/
Это чьих?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56 Ответы: #168

74. Сообщение от wWolfemail (?), 07-Фев-24, 14:55   +/
Цикл for в Go это просто сборная солянка всех возможных конструкций циклов.
Он может быть и сишным (start; cond; end) и while'ом, и loop'ом (безусловным), и ренжом аля питоновский.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

75. Сообщение от Аноним (75), 07-Фев-24, 14:55   +/
>Такое сложно читать человеку , он устает

Ну так пишите на перле, там будет просто map { print $_, "\n" } qw/a b c/

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

Реально ваш язык, присмотритесь.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #142

76. Сообщение от Аноним (75), 07-Фев-24, 14:55   –1 +/
Похоже на итераторы луашные
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #91

77. Сообщение от Аноним (-), 07-Фев-24, 15:10    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

79. Сообщение от Пряник (?), 07-Фев-24, 15:27   +1 +/
Не знаю, я начал с 2021. На сайте написано всё https://doc.rust-lang.org/stable/edition-guide/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

81. Сообщение от Аноним (81), 07-Фев-24, 15:49   –2 +/
Вообще я бы посомневался что есть уровень Си. Временами и жава код быстрее.
И вроде бы все круто, но похоже западные языки будут обосабливаться в своем маня-мирке. Они уже давно европу миром зовут, так что ждать омталось недолго.
А вот жабокод уже заворачивают и отечественным проектам денег не дают.
Кто их знает что там очередной гомосек решит как пондасрать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #166

83. Сообщение от Анонист (?), 07-Фев-24, 16:07   +1 +/
Потому что в нынешнем айти засилье гуманитариев, которые даже слов таких не знают, как "точки отказа". Из-за этого и браузеры стали жрать как топовые игры AAA. Инженеров нет. Вернее есть, но в военке и прочей робототехнике с AI теперь тусуются.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #205

84. Сообщение от OpenEcho (?), 07-Фев-24, 16:07   +/
> ... библиотекам с других языков.

Гон. Там все свое, от компилятора и кончая библиотеками

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

85. Сообщение от Анонист (?), 07-Фев-24, 16:09   +2 +/
Судя по тому что ты написал, троллем тут являешься именно ты. А гит действительно не нужен и винда стоит на 99% компов (те что не маки), в отличии от ляликса с его 0.01%.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64 Ответы: #144

88. Сообщение от OpenEcho (?), 07-Фев-24, 16:14   +3 +/
> Синтаксис Go - это кошмарная солянка синтаксисов кучи языков.

Сдается мне, что вы не понимаете разницы между синтаксисом и семантикой.
Большинство языков, - с синтаксисом С

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #147

89. Сообщение от Всем Анонимам Аноним (?), 07-Фев-24, 16:29   +2 +/
или специально для забавы вставляет, чтобы реакцией наслаждаться
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

90. Сообщение от OpenEcho (?), 07-Фев-24, 16:33   +/
> Кому как. Жители бангладешских деревень, которые не умеют читать и считают только используя пальцы рук и ног

Почему же тогда они везде?! В Оракле, Гугле и конечно же в Майкрософте! И живут почему-то не в деревнях, а в Issaquah, Mountain View, Redwood... и получают четверть миллиона в год зеленью

Где Вы, о великий "белий каста" ? Где ваш гениальный код?!

Мир ждет вас!!!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #117

91. Сообщение от Аноним (91), 07-Фев-24, 16:56   +/
Мне тоже сразу на ум пришло: в lua это 30 лет назад уже было
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76

94. Сообщение от OpenEcho (?), 07-Фев-24, 17:09   +1 +/
> Каждый import github.com/... - это дополнительная точка отказа.

О-о-о! Есть еще богатыри, пишущие абсолютно все с нуля и не использующие никакие библиотеки...

Майкрософт с Гуглом скоро падут от такой мощи

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #97, #107

95. Сообщение от Аноним (-), 07-Фев-24, 17:17   –2 +/
Не чуди. Пункт 3 известен всем: https://www.toptal.com/go/4-go-language-criticisms
А еще репозиторий может закрыться.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #112, #169

96. Сообщение от OpenEcho (?), 07-Фев-24, 17:18   +/
> Потому что можно https://github.com/advisories/GHSA-ppp9-7jff-5vj2

То ли дело в раст: std::fs::remove_dir_all
и бум, в гонщики: CVE-2022-21658

Или  Vec::from_iter, - дважды освободил и в CVE-2021-31162

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #145

97. Сообщение от Аноним (-), 07-Фев-24, 17:19   –2 +/
Одно дело, когда это хранилище, из которого пакет не пропадет (например, pip, nuget). И другое - чей-то личный репозиторий, который автор завтра решит закрыть.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #104

98. Сообщение от OpenEcho (?), 07-Фев-24, 17:20   +/
мимо. cm: CVE-2021-31162
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59

99. Сообщение от Андрей (??), 07-Фев-24, 17:22   –2 +/
Вы на нём пишете или как те из стаи "активистов" по жалобам которых отменяют концерты? :-D
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #148

100. Сообщение от Golangdev (?), 07-Фев-24, 17:24   +2 +/
Отличная новость!
Ответить | Правка | Наверх | Cообщить модератору

102. Сообщение от Аноним (102), 07-Фев-24, 17:25   +1 +/
> Решена давняя проблема с циклами "for"

Выглядит так как будто язык всё ещё переживает детские болезни.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #176

103. Сообщение от anonymous (??), 07-Фев-24, 17:46   +/
В учебнике авторы говорят, что база - С, но очень много элементов: от модулей и ООП - взято из языков Вирта.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #105

104. Сообщение от OpenEcho (?), 07-Фев-24, 17:48   +2 +/
> Одно дело, когда это хранилище, из которого пакет не пропадет (например, pip,
> nuget). И другое - чей-то личный репозиторий, который автор завтра решит
> закрыть.

Господа как обычно, догадки выдают за правду...

go мod vendor

и стороняя библиотека у тебя на диске, лежит в той же директории где и проект, который ты можешь компилить в оффлайне, под водой и на самолете (у которго нет вайфай). А на счет овнер исчез/закрыл, для это го держит дубликты всех опубликованных пакеджей, как раз на этот случай чтоб не изчезали и еще чтоб верифицировать достоверность, что пакет кто-то не увел с целью внедрить дерьмецо

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #97 Ответы: #108

105. Сообщение от OpenEcho (?), 07-Фев-24, 17:55   +/
> В учебнике авторы говорят, что база - С, но очень много элементов: от модулей и ООП - взято из языков Вирта.

В Го завезли ООП? Вы уверены что книжка от авторов?

  

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103 Ответы: #132, #135

106. Сообщение от noc101 (ok), 07-Фев-24, 17:56   +/
Порядок выполнения не гарантируется. Одна горутина может быть завершена быстрей другой, даже если была запущена позже.
Но порядок запуска определенный.
В твоем примере будет АБС выводится в любом случае, так как порядок запуска и порядок выполнения тут совпадет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #186

107. Сообщение от noc101 (ok), 07-Фев-24, 18:01   –1 +/
О боже гуманитарий, не позорься.
Никто не писал про всё писать с нуля. тут пишут, что в проекте импортить с гитхаба модули, это возможные будущие проблемы.
Умные ребята, которая не пьют смузи как ты, качают модули в папку вендор и уже оттуда импортят и по надобности обновляют.
Плюс в том, что нет минусов. Даже если гитхаб закроется, твой проект не умрет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #110, #113

108. Сообщение от noc101 (ok), 07-Фев-24, 18:02   –4 +/
Верно, но вставлю замечание.
В случае переезда разработчика на новый ПК, сервер сборки и тп. При закрытом гите, проект уже не соберется. Поэтому, лучше скачивать с гита архив, чтобы был резерв.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104 Ответы: #115, #119

109. Сообщение от OpenEcho (?), 07-Фев-24, 18:24   +1 +/
> А если какой-нибудь индус забросит проект , от которого зависят другие проекты . То мой хелоуворд не соберется ?

А что это ты вообще в программирование суёшься? Это их бизнес (ты даже хело ворд не одолел)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

110. Сообщение от Аноним (-), 07-Фев-24, 18:35   +/
Ну хорошо, ты скачал пакет себе. Опубликовал свой код. Посторонний разработчик решил сделать форк или просто собрать на своей машине, а пакета в инете уже нет. Как с этим решать? Публиковать также код всех пакетов?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #116

111. Сообщение от OpenEcho (?), 07-Фев-24, 18:40   +1 +/
> Чтобы собрать хелоуворд , сколько гигабайт надо ?

Для это не гигабайты нужны (можно даже на STM32 со 128кб), для это мозги нужны

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

112. Сообщение от похнапоха. (?), 07-Фев-24, 18:52   +/
При чем тут третьесторонний репозиторий к функционалу ипорта модулей? Для этого в Гоу есть средства, как решить эту проблему. И это касется любого ЯП, когда используются третьесторонний зависимости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95

113. Сообщение от OpenEcho (?), 07-Фев-24, 18:54   +2 +/
> О боже гуманитарий, не позорься.
> Никто не писал про всё писать с нуля. тут пишут, что в
> проекте импортить с гитхаба модули, это возможные будущие проблемы.

О гений телепатический, в Го пакеты качаются не с гитхаба, а по умолчанию с прокси Го репозитория, чтоб пакеты "не изчезали" и не были инфицированны

> Умные ребята, которая не пьют смузи как ты,

Да смузи они полезны, а вот бухло тебя до хорошего точно не доведет

> качают модули в папку вендор и уже оттуда импортят и по надобности обновляют.

Блястнул уровнем не-знаий, "молодец", "Умные ребята..." :)
Про go mod vendor не слышал, вручную качаешь?

> Плюс в том, что нет минусов. Даже если гитхаб закроется, твой проект не умрет.

Все верно, для этого и есть: go mod vendor

и еще есть репозитарий Го, который хранит все копии пакетов с гитхаба, как раз на случай "диверсий" :)


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #121, #206

114. Сообщение от Аноним (162), 07-Фев-24, 18:59   +/
Ну потому что это не шаблоны, а именно обобщения. С цпп шаблон в кучу классов превращается, а той же Жабе или Го -- нет. Там это просто сахар для проверки типобезопасности коллекций и всё. Причём такой сахар с овнецом немного.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #146

115. Сообщение от похнапоха. (?), 07-Фев-24, 18:59   +2 +/
Проект соберется, для этого достаточно знать азы работы с зависомстями и произвести replace:
go mod edit -replace github.com/репозиторий/мой-потерянный-подуль=/home/user/project/мой-потерянный-подуль

Поэтому ИКСперты продолжайте критиковать скобочки в синтаксисе ЯП

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #108

116. Сообщение от OpenEcho (?), 07-Фев-24, 19:00   +/
> Посторонний разработчик решил сделать форк или просто собрать на своей машине, а пакета в
> инете уже нет. Как с этим решать?

В Го такого не получится, даже если овнер исчез, пакет останется закэшированным/сохраненным в Го прокси репозитарии

> Публиковать также код всех пакетов?

Вы про форк слышали?


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #110 Ответы: #118

117. Сообщение от Аноним (162), 07-Фев-24, 19:02   –1 +/
Ты удивишься, но в деревнях тоже. В огромных количествах. Мой гениальный код где надо, но даже я дженериков побаиваюсь. Они -- нет. Поэтому, лучше, когда дженериков нет вообще. Натыкать проверок типа того, что кладёшь и что берёшь в/из коллекции, из снипетов куда проще и сюрпризов меньше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90 Ответы: #120

118. Сообщение от Аноним (-), 07-Фев-24, 19:06   –1 +/
Форк, конечно, спасает, но при использовании тех же pip и nuget разработчику не нужно форкать пакеты) Их соранность гарантируется самим хранилищем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #116 Ответы: #122

119. Сообщение от OpenEcho (?), 07-Фев-24, 19:07   +/
> Поэтому, лучше скачивать с гита архив, чтобы был резерв.

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


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #108

120. Сообщение от OpenEcho (?), 07-Фев-24, 19:15   +3 +/
> Мой гениальный код где надо

Я почему-то даже не сомневался :)))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #117

121. Сообщение от Аноним (-), 07-Фев-24, 19:15   –1 +/
> Все верно, для этого и есть: go mod vendor
> и еще есть репозитарий Го, который хранит все копии пакетов с гитхаба, как раз на случай "диверсий" :)

Хз, выглядит ненадежно. Слишком много непонятных зависимостей.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113 Ответы: #123

122. Сообщение от OpenEcho (?), 07-Фев-24, 19:19   +/
> Форк, конечно, спасает, но при использовании тех же pip и nuget разработчику
> не нужно форкать пакеты) Их соранность гарантируется самим хранилищем.

Вы через слово читаете??? Аналог ваших питонов и дотнетов - это ГоПрокси

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118 Ответы: #130

123. Сообщение от OpenEcho (?), 07-Фев-24, 19:23   +/
> Хз, выглядит ненадежно.

Что именно - не надежно ? Все без проблем может работать как в оффлайне, так и со свежаком

> Слишком много непонятных зависимостей.

Для это документация есть, чтоб избавиться он непонятностей и зависимостей


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #121

125. Сообщение от Аноним (127), 07-Фев-24, 19:43   –2 +/
Брин, перелогинься и не позорься! :)))) "делает дела"... ты в 3 классе что ли? Выражаешься как косноязычный троечник. Это уже не говоря о смысле твоих похвал недоязыку от недокомпании.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

126. Сообщение от Аноним (127), 07-Фев-24, 19:45   +/
Абсолютно солидарен. Но если тебе 20, ты работаешь в гугле и с тебя просят "инновации", вот такие вот идеи и приходят в голову! :)) Инженерное позорище, согласен. Как и nuget в мире .NET
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43

127. Сообщение от Аноним (127), 07-Фев-24, 19:48   +/
Для большинства приблуд даже .NET FW достаточно за глаза, остальное решается распараллеливанием. Если уж что и продвигать, то C# - последний вменяемый язык, да и тот после 8.0 уродуют.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #161

128. Сообщение от другой аноним (?), 07-Фев-24, 19:59   +4 +/
Вот да, достало, когда это изменение называют "фиксом", да ещё и "фиксом ошибки". Создатели языка прекрасно понимали достоинства и недостатки обоих вариантов, и сознательно выбрали один из них. Ну... оказалось, что большинство программистов в XXI веке уже ожидают как умолчание другой (в XX было ещё не так). Потом долго думали, стоит ли менять поведение с учётом обещаний совместимости в ветке 1.x. Ну... решили, что стоит. Решение не моё, оценивать не берусь. Но называть это "фиксом ошибки", тем самым провоцируя неверное понимание, что вот, дескать, в коде компилятора ошиблись, неправильно реализовали -- не стоит, по-моему.

Для сравнения, как это было в Джулии. Там аналогичный сдвиг семантики произошёл в версии 0.сколько-то (забыл подробности). В версии 1.0 уже было по-современному, и так и остаётся. Но оказалось, что некоторым всё-таки нужна старая семантика (Джулия -- это в том числе и про скорость, а старая быстрее), и пришлось добавить возможность опционально вернуться на старое. Оно, конечно, не совсем ключевое слово outer, которое иногда ключевое, а иногда и нет -- сомнительное решение, но, опять же, не мне судить. К совместимости после выхода версии 1.0 обе команды относятся серьёзно, молодцы, респект и уважуха... Но, если всё-таки НАДО сломать -- ну, выкручиваются, как могут.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

130. Сообщение от Аноним (-), 07-Фев-24, 20:02   –1 +/
Ну не вполне же. Даже из самого названия (прокси) следует, что он кеширует пакеты просто на время, скорее для удобства доступа и безо всяких гарантий. На их сайте написано: "Why did a previously available module become unavailable in the mirror? - proxy.golang.org does not save all modules forever".
Хотя это уже лучше, чем ничего.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #122 Ответы: #137

131. Сообщение от Аноним (131), 07-Фев-24, 20:47   –3 +/
> конвертить строки в массив байтов

Дали сишнику строки, а он их в массив сконвертировал, за пределы вышел и нулевой указатель разыменовал.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

132. Сообщение от Аноним (131), 07-Фев-24, 20:48   +/
Ещё один, думающий, что ООП — это «как в джаве» или «как в крестах».
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105 Ответы: #136

133. Сообщение от Аноним (131), 07-Фев-24, 20:52   +1 +/
> Просто очень сложно такое читать

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #179

134. Сообщение от Аноним (131), 07-Фев-24, 20:57   +/
Всё правильно, порядок выполнения горутин не гарантируется. Однако, у тебя настолько примитивный код, что пока цикл дойдёт до запуска следующей горутины, предыдущая успевает отработать. Если бы там делалось что-то кроме вызова print на локалхосте, порядок вывода менялся бы между запусками.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #140, #143

135. Сообщение от tty0 (?), 07-Фев-24, 20:59   +/
От ранних, в рассказе ООП было вначале столько же, сколько и последующих С
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105

136. Сообщение от OpenEcho (?), 07-Фев-24, 21:49   –1 +/
> Ещё один, думающий, что ООП — это «как в джаве» или «как в крестах».

Ещё один, думающий, что знает что я думаю... одни блин телепаты :)

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132 Ответы: #211

137. Сообщение от OpenEcho (?), 07-Фев-24, 22:00   +1 +/
>  кеширует пакеты просто на время, скорее для удобства доступа и безо всяких гарантий.

Вы чуть, чуть - не дочитали.

> There are a number of reasons for this, but one reason is if proxy.golang.org is not able to **detect a suitable license**.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #130

138. Сообщение от xer (?), 07-Фев-24, 22:08   +/
а какая мне разница?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

139. Сообщение от Вы забыли заполнить поле Name (?), 07-Фев-24, 22:10   +/
С обработкой ошибок по прежнему беда?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #177

140. Сообщение от Маня (?), 07-Фев-24, 22:27   +/
это не у меня а в статье, которая вводит в заблуждение
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #134

141. Сообщение от _ (??), 07-Фев-24, 23:29   +2 +/
>почему код:
>[...]
>будет выводить abc а не cba? нет же гарантий порядка выполнения горутин. просто теперь не будет повторений.

потому что местные IT-ЫгспЁрды посчитали неважной для __точного__ перевода фразу:
"the following code will print “a”, “b”, and “c” in some order"
оне жи в английском тоже ЫгспЁрды! :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

142. Сообщение от Аноним (142), 07-Фев-24, 23:29   +/
На перле будет
say for qw/a b c/;
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75 Ответы: #178

143. Сообщение от Аноним (143), 08-Фев-24, 00:44   +1 +/
Кто такой Горутин? Много раз эту фамилию уже видел, но так и не понял что это за мужик. Причём иногда о нем пишут как о женщине - Горутина.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #134 Ответы: #223

144. Сообщение от Билли Г. (?), 08-Фев-24, 01:44   +/
Миллионы мух не могут ошибаться.

Ваш Билли

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85

145. Сообщение от Аноним (40), 08-Фев-24, 02:42   +1 +/
Справедливости ради, TOCTOU уязвимости - это гонка процессов, а не тредов. Ну в том смысле, что Rust может и защитит от ошибок кривого наваливания данных в shared коллекции из разных потоков, но вот что у него кривая реализация в std::fs - это логическая ошибка (некорректная работа с системными вызовами), от которых этот язык не защищает никак. Вся его задача - перенос "лучших практик" из C++ по работе с памятью в компайл-тайм, чтобы минимизировать человеческий фактор. В остальном просто нескучный синтаксис.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

146. Сообщение от penetrator (?), 08-Фев-24, 04:10   +/
тогда C# сильно тебя удивит ))

там это тоже типа Generic, но работает как обычный шаблон (по твоей терминологии)

и в нем и Generic и Template это около и рядом одного и того же

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114 Ответы: #156

147. Сообщение от Аноним (7), 08-Фев-24, 05:51   +1 +/
Я не упоминал семантику, если ещё ещё затронуть это вообще ******.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88

148. Сообщение от Аноним (7), 08-Фев-24, 05:55    Скрыто ботом-модератором+1 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #99

149. Сообщение от 12yoexpert (ok), 08-Фев-24, 06:50   +/
Про деньги можно было бы заикаться, если бы на нём были вакансии, а так он даже в топ-30 емнип не входит
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56

151. Сообщение от 12yoexpert (ok), 08-Фев-24, 06:53   –4 +/
Вряд ли что-то в этом недоязыке было сделано в угоду скорости, достаточно взглянуть на docker и kubernetes
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #189, #198

152. Сообщение от 12yoexpert (ok), 08-Фев-24, 06:55   –1 +/
Go означает go buy another HDD
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

154. Сообщение от 12yoexpert (ok), 08-Фев-24, 06:57   +/
Пруф? В nim дженерики - compile-time. Эксперты опеннета такие эксперты
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71 Ответы: #158

155. Сообщение от ВоваВолшебник (?), 08-Фев-24, 08:32   +1 +/
Пользовался языком пару лет. Неплохой инструмент для написания маленьких сетевых программ. Но в какой то момент прозрел и нафиг послал этот язык со своими идиотскими правилами синтаксиса. Мол, ему не нравится что есть неиспользованная переменная. Ну сейчас в данный момент не используется, надо будет, потом удалим, сейчас голова забита другим. Это конечно хорошо, что типа для оптимизации. Но в активной фазе разработки как же эта фигня ставит палки в колеса. Я вообще молчу про фигурные скобки. Это вообще чья то субьективщина стала частью языка.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #199, #218

156. Сообщение от Аноним (162), 08-Фев-24, 11:03   +/
Чем меня это должно удивить? В Жабе и Шарпе обобщений не было. Жаба, чтобы сохранить обратную совместимость, обобщения реализовала только на уровне компиляции, а МС на обратную совместимость забили и сделали через привычные шаблоны. Как в Го не знаю. Присобачивать обобщения к языку, который обобщений до этого не имел, всегда процесс не безболезненный.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #146 Ответы: #174

157. Сообщение от Аноним (157), 08-Фев-24, 11:04   +/
Любой статический язык без ADT - игрушка для хеловордов.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #163, #167, #184

158. Сообщение от Аноним (162), 08-Фев-24, 11:06   +/
Что за ним такой? Очередной овнокотлин, только теперь для шарпа?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #154

159. Сообщение от Аноним (162), 08-Фев-24, 11:08   +/
Ну вот твой шарп. В нём шаблоны названы дженериками. Чтоб по-модному. А в моде тогда была Жаба. В Жабе -- дженерики. Уровня компиляции.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #175

160. Сообщение от Аноним (162), 08-Фев-24, 11:10   +/
А что в Го нет каких-нибудь механизмов явной сериализации исполнения? Ну там синхры какие-нибудь или что-то в этом духе?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #192, #195

161. Сообщение от Аноним (162), 08-Фев-24, 11:10   +/
В шарпе есть произвольные анонимные классы?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #127

162. Сообщение от Аноним (162), 08-Фев-24, 11:13   +/
Кому как. Я устаю гадать во всех этих недомолвках питанорубижабаскрипта. А тут -- всё понятно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

163. Сообщение от Аноним (162), 08-Фев-24, 11:19   +/
Ну вот у меня ровно обратное мнение. ADT слишком сложно для уверенного понимания. А без понимания его применение приводит к опасным ошибкам. Лучше многословно, но предельно понятно на каждом шаге даже дэбилу.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157 Ответы: #165, #215

164. Сообщение от Аноньимъ (ok), 08-Фев-24, 11:23   +/
> Что именно там "Синтаксис Go основан на привычных элементах языка Си"?

Это стандартный базворд, так же как джава и сишарп "имеют привычный похожий на си синтаксис".
Менеджерам нужно, иначе они не примут ЯП в прод никогда, ну и реклама дыркошлёпам, типо чувак тут то-же только лучше...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

165. Сообщение от Аноним (168), 08-Фев-24, 11:37   +/
ADT ? Может, AST ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #163 Ответы: #173

166. Сообщение от Аноним (168), 08-Фев-24, 11:42   +/
А как обстоят дела с посконно-православными языками?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81

167. Сообщение от Аноним (-), 08-Фев-24, 11:46   +/
Ты про Абстрактный Тип Данных? Чо ниасилил сортировку?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157 Ответы: #180

168. Сообщение от Аноним (168), 08-Фев-24, 11:48   +/
Наших!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

169. Сообщение от Аноним (169), 08-Фев-24, 11:58   +/
Я, конечно, тоже go не люблю, но ты смотрел ваще на что именно линк кидаешь? Там какое-то небинарное оно с розовыми волосами с очень плохим английским и которое работало только в вебе.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95

170. Сообщение от Бывалый смузихлёб (?), 08-Фев-24, 12:01   +1 +/
Go - это как
>>> Go on home British Soldiers Go on home
>>> Have you got no fucking homes of your own
>>> For 800 years we've fought you without fear
>>> And we will fight you for 800 more
>>> ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

171. Сообщение от ZVVZemail (?), 08-Фев-24, 12:21   +/
Опять, еще один не удосужился при написании кода запомнить что же за код он пишет. Ну иди на JS пиши, если человек  не осилил на пару правил на расте  выучить то и на  С++ такому индивиду тем более делать нечего, а человеку лучше на пенсию пойти отдыхать, его же работу чатгпт отдать, все надежней будет. И человек счастлив и не обременен и компания не получит кучу багов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #201

173. Сообщение от Аноним (162), 08-Фев-24, 12:47   +/
Ну я о проблемах с пониманием и адекватным применением именно ADT, т.е. абстрактных типов и шаблонов построения типов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #165

174. Сообщение от penetrator (?), 08-Фев-24, 13:05   –1 +/
> Чем меня это должно удивить? В Жабе и Шарпе обобщений не было.
> Жаба, чтобы сохранить обратную совместимость, обобщения реализовала только на уровне компиляции,
> а МС на обратную совместимость забили и сделали через привычные шаблоны.
> Как в Го не знаю. Присобачивать обобщения к языку, который обобщений
> до этого не имел, всегда процесс не безболезненный.

я не знаю что ты называешь обобщениями, но шарпе шаблоны называются генериками / Generic

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #156 Ответы: #181

175. Сообщение от penetrator (?), 08-Фев-24, 13:08   +/
> Ну вот твой шарп. В нём шаблоны названы дженериками. Чтоб по-модному. А
> в моде тогда была Жаба. В Жабе -- дженерики. Уровня компиляции.

генерики появилось в шарпе в 2005 году, когда смузиеов еще не было, как и другой модной хрени

просто такое название для одного и того синтаксического сахара, детали реализации уже вторичны

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159 Ответы: #182, #183

176. Сообщение от Аноним (7), 08-Фев-24, 13:23   +1 +/
Ага, а языку уже 15 лет при этом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #102

177. Сообщение от Аноним (7), 08-Фев-24, 13:23   +/
Их концептуально не хотят завозить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #139

178. Сообщение от Аноним (75), 08-Фев-24, 13:30   +/
say работает по дефолту хоть в какой-нибудь версии перла?
И у вас не запускается рутина, как в гошном варианте. map с блоком ближе к этой логике.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142

179. Сообщение от Аноним (75), 08-Фев-24, 13:33   +/
Я знаю пять или шесть и для меня пихон (99% кодов) и голанг (от 99% программистов на голанге, начинавших с курсов пихона) по-прежнему нечитаемы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133

180. Сообщение от Аноним (157), 08-Фев-24, 13:51   +/
Возможно имелось в виду Алгебраические типы данных?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167

181. Сообщение от Аноним (162), 08-Фев-24, 13:55   +/
Офигеть, чудик, а автобус называется бас, а рыба -- фиш. Нефига себе, открытие. Generic это Обобщение. В данном случае Обобщение типа. Ну хочешь называть то, что ты не понимаешь, тем, что ты не понимаешь -- кто ж тебе запретит. Хотя, напишу жалобу в минобр -- может, запретят в конце концов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #174

182. Сообщение от Аноним (162), 08-Фев-24, 14:03   +/
Ну фиг знает. Эти самые Дженерики в Жабе именно, что сахар уровня написания кода. Машина о них ничего не знает, в байткоде их нет. В Жабе какой-нибудь вызов new Shit<String> в коде не сделает тебе новый класс Shit<String>, а потом его экземпляр, а просто сделает очередной экземпляр Shit. В Шарпе же, насколько я понимаю, вызов Обобщения (т.е. когда ты его уже типизуешь) плодит настоящий новый класс на стадии компиляции, ну т.е. это такой классический Шаблон.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #175

183. Сообщение от Аноним (162), 08-Фев-24, 14:07   +/
Ну как не было, меня уже к 2005 от смузи мутило, а хлебать их начала не раньше 2002 точно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #175

184. Сообщение от Аноним (169), 08-Фев-24, 14:38   +/
ADT - это прошлый век, сейчас любой язык без TRJ - игрушка для хеллоувротов. А на подходе еще BKFHW - еще круче будет
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

185. Сообщение от Аноним (185), 08-Фев-24, 15:27   +/
Ящик Пандоры они открыли, зафорсив стиль скобок K&R с левыми объяснениями "потому что гладиолус и транслятор быстроходный, и точки с запятой автоматом, чо пристали". У Вирта все языки с быстрыми трансляторами, но им побоку в строчку идет BEGIN или с новой строки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

186. Сообщение от derfenix (ok), 08-Фев-24, 16:18   +1 +/
Порядок запуска тоже не определён. Горутины сначала в одну из очередей попадают, прежде чем запуститься, и какая когда запустится не знает никто, кроме планировщика.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #203

187. Сообщение от derfenix (ok), 08-Фев-24, 16:20   +/
Суть изменения тут в том, что выведутся все 3 символа, а не три раза "с", как было до 1.22. Только в этом отличие. А порядок выведенных символов всё так же практически рандомный.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

188. Сообщение от Имя1 (?), 08-Фев-24, 16:54   +/
Так то в java Excelsior JET уже давно AOT с рефлексией запилили, без каких либо ограничений. Вот нынешний GraalVM без полноценной рефлексии какая-то несерьезная игрушка, печально что и C# все так же
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

189. Сообщение от OpenEcho (?), 08-Фев-24, 18:50   +/
> Вряд ли что-то в этом недоязыке было сделано в угоду скорости, достаточно
> взглянуть на docker и kubernetes

11 Bravo

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #151

190. Сообщение от Neon (??), 08-Фев-24, 19:28   +/
Ничего привычного из С даже близко нет в Go. Откуда это глупость постоянно берется ?!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #202, #214

191. Сообщение от Neon (??), 08-Фев-24, 19:28   +/
Во, во, из какого пальца высосали похожесть Go на С неизвестно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

192. Сообщение от OpenEcho (?), 08-Фев-24, 19:46   +/
> А что в Го нет каких-нибудь механизмов явной сериализации исполнения? Ну там
> синхры какие-нибудь или что-то в этом духе?

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160

195. Сообщение от cheburnator9000 (ok), 08-Фев-24, 22:40   +/
> А что в Го нет каких-нибудь механизмов явной сериализации исполнения? Ну там
> синхры какие-нибудь или что-то в этом духе?

конечно есть, но язык же позиционируется как пишешь go myFuncName() и все чики пуки из коробки, люди так и делают, а в итоге все не так просто.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160 Ответы: #207

198. Сообщение от Хухрымухры (ok), 09-Фев-24, 07:07   –1 +/
Дружище. Ты напиши сначала аналог kubernetes или docker на твоём любимом языке, а там посмотрим.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #151

199. Сообщение от Хухрымухры (ok), 09-Фев-24, 07:11   +/
> Мол, ему не нравится что есть неиспользованная переменная.

_ = some

https://go.dev/play/p/OZLj1Xa_Zxp?v=

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #155

200. Сообщение от Хухрымухры (ok), 09-Фев-24, 07:13   +/
> всю жизнь занимались херней

По вашему получается что в то время все занимались хернёй.
Потому что тогда не было толком устоявшейся парадигмы типа "Си подобного языка".

В то время только только перестали использовать перфокарты.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #204

201. Сообщение от Проходил мимо (?), 09-Фев-24, 07:39   +1 +/
> Опять, еще один не удосужился при написании кода запомнить что же за
> код он пишет. Ну иди на JS пиши, если человек  
> не осилил на пару правил на расте  выучить то и
> на  С++ такому индивиду тем более делать нечего, а человеку лучше
> на пенсию пойти отдыхать, его же работу чатгпт отдать, все надежней
> будет. И человек счастлив и не обременен и компания не получит
> кучу багов.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #171

202. Сообщение от Аноним (202), 09-Фев-24, 07:56   +/
https://go.dev/doc/faq#ancestors

"Go is mostly in the C family (basic syntax), with significant input from the Pascal/Modula/Oberon family (declarations, packages)"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #190

203. Сообщение от noc101 (ok), 09-Фев-24, 12:19   +/
Не знал. Тогда не прав
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #186

204. Сообщение от anonymous (??), 09-Фев-24, 12:30   +/
Вы доклад-то смотрели ? Посмотрите, он интересный.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #200

205. Сообщение от Лосилий Васейник (?), 09-Фев-24, 13:56   +/
Пришёл однажды скрам мастер к нам в айти отдел на завод. Мы айтишники люди современные — всё понимали, но вот мужики из цеха невзлюбили его. Одевался странно, голосок писклявый, много слов иностранных. Стояли как-то в очереди за обедом в столовой — так он подслушал мужиков и начал прямо там обучать их скраму. Петрович весь покраснел, усами зашевелил — как сейчас помню. Мы от греха подальше старались сделать вид что он не с нами. Все обошлось, но было не по себе что Петрович глаз с него не сводил весь обед. На утро следующего дня пролетаю проходную в аккурат 7:57 чтобы не оштрафовали. Захожу в комнату, а скрам мастера нашего нет. Думаю вот же не повезло, придётся писать объяснительную за опоздание и штраф этот вычтут из получки. Его всё нет и нет, думали заболел серьёзно. Но в таких ситуациях принято ставить начальника в известность. Прошло около месяца и только тогда мы узнали что он получил травму головы когда с работы шёл. Настолько тяжёлую что начал бредить скрамом. Каждому врачу предлагал работать по скраму и получать сертификаты какие-то. А мы говорили ему не ходить в кроссовках зимой. Скользко ведь, гололёд. Не знаю его дальнейшей судьбы. Просто вспомнилось что-то.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83 Ответы: #208

206. Сообщение от noc101 (ok), 09-Фев-24, 15:53   +/
>> качают модули в папку вендор и уже оттуда импортят и по надобности обновляют.
> Блястнул уровнем не-знаий, "молодец", "Умные ребята..." :)
> Про go mod vendor не слышал, вручную качаешь?

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

>> Плюс в том, что нет минусов. Даже если гитхаб закроется, твой проект не умрет.
> Все верно, для этого и есть: go mod vendor

И возращаемся к первокомментарию. Чел говорит что указывать гитхаб в импортах это лищняя точка отказа.
В чем он не прав?
Получается прав.


> и еще есть репозитарий Го, который хранит все копии пакетов с гитхаба,
> как раз на случай "диверсий" :)

И?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113 Ответы: #209

207. Сообщение от _ (??), 09-Фев-24, 18:43   +/
Ты конечно же дашь линк на https://go.dev/чего-то-там  где о так "позиционируется"? Ты же не жалкий сосунишка сосок?

>люди так и делают, а в итоге все не так просто.

Не волнуйся всех этих ^^^^^ у нас уже AI-шкой меняют. Она уже на их уровне, в период 5-10 лет станет лучше их.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #195

208. Сообщение от _ (??), 09-Фев-24, 18:47    Скрыто ботом-модератором+/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #205

209. Сообщение от OpenEcho (?), 09-Фев-24, 19:09   +/
> В чем он не прав?

В том, что так же как и Вы - не в теме. Но усиленно продолжаете спорить...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #206 Ответы: #210

210. Сообщение от noc101 (ok), 09-Фев-24, 23:48   +/
То есть аргументов нет. Что и ожидалось от нуба
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #209

211. Сообщение от Аноним (211), 10-Фев-24, 00:55   +/
конструктор это просто функция
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #136 Ответы: #217

213. Сообщение от кек (?), 10-Фев-24, 11:39   +/
Соберется, пока проект не выпилили
А если выпилили или нашли cve 15/10 в мертвом проекте - будь бобр искать форк или сам форкать, да. Но это всегда так и было, на самом то деле
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

214. Сообщение от Аноним (218), 10-Фев-24, 15:53   +/
Тупизация, структуры, указатели, блоки кода фигурными скобками, видимость внутри блока. Все это очень даже сишное.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #190

215. Сообщение от Аноним (218), 10-Фев-24, 15:55   +/
А им и надо, чтобы язык был такой черной магией, чтобы не программу писать, а что угодно подводящее к ее написанию, но никогда не приводящее. Подмена деятельности ее имитацией.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #163

217. Сообщение от OpenEcho (?), 10-Фев-24, 21:57   +/
> конструктор это просто функция

Не просто функция, а функция которая вызывается только раз при инициализации класса, а классов в Го языке как language construct - нет (И я очень этому даже рад, чем меньше абстракций, тем ближе к сущности). Единственный "констуктор" в Го - это функция "init".
Но в тоже время возможности языка вполне себе позволяют реализовывать собсвенный "ООП" если надо через структуры (что вообщем-то точно так же и делается во "взрослых" ООП)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #211

218. Сообщение от Аноним (218), 11-Фев-24, 02:00   +1 +/
>сейчас в данный момент не используется, надо будет, потом удалим, сейчас голова забита другим. Это конечно хорошо

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #155

221. Сообщение от zog (??), 13-Фев-24, 14:43   +/
> но для тех, кто случайно прочитает твой комментарий, я напишу, что шаблоны - это compile-time фича, а дженерики - рантайм.

На самом деле ровно наоборот. Именно поэтому дженерики в Java сделаны с type erasure и в рантайме узнать конкретный дженерик невозможно. Фактически джавовские дженерики - это синтаксический сахар, заменяющий явное преобразование типов. Дженерики - это недоделанные шаблоны и это действительно плохо.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

222. Сообщение от нона (?), 15-Фев-24, 01:53   +/
А как должно быть?

for i := 0 .. 9? Это гораздо более прямой путь к off by 1.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

223. Сообщение от anonymous (??), 07-Ноя-24, 09:18   +/
Эту штуку под именем корутина Никлаус Вирт в языке Modula-2 придумал.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #143


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру