172 похожих чатов

Так это везде так. Исключения, ведут к неразберихи и даже

оверхеду.
Обработка на сях, с++ сводится к таким же мувам или кодам ошибок.
В расте то что добавили "?" это уже потом, потому что в отличии от Go там нереально все это обрабатывать.
То что ты пишешь if err != nil.
Не больше чем ты пишешь матч с выбором, а весь дизайн такой обработки...где только не разжевывали.
Сделай пару функций для помощи и прокидывания...Они будут работать везде и всегда.

Так вот мой тейк в том, что в го это минимально нужная функциональность, которая не мешает единообразию и гибкости. Если ты ошибаешься и пишешь обработку ошибок..с ошибками. Причем тут язык? Он не обязан защищать дурака. А на го кода уже столько, что если бы это было актуально. Наныли бы уже, но увы. Людям в большинстве и так хорошо, а гугл принципиально хотел так.

Часть 3 немного про ошибки. Когда я иду читать код на расте там куча мест с паниками и уловить такие места не очень просто. Даже зная все методы, которые паникуют при распаковки Option / Result.
А то что делает "?" когда их штук 10 в функции. без пол литра не разберешь.
Или даже матчи с TODO!.
Все это становится кашей...
В то время когда в GO ты везде видишь +- одинаковый код, за редким исключением...но ты его сразу детектишь.
Это мой текущий опыт.
В D я обрабатываю ошибки в Си стайл, потому что по другому не удобно, а там где могу вызвать исключение, вызываю, но в таких местах у меня это по сути краш с записью в журнал.

11 ответов

67 просмотров

Оверхеда нет

То есть все ваши аргументы свелись к: 1. Везде плохо 2. Если бы было плохо то уже бы исправили Можно было не писать три параграфа про раст.

Вот тебе и го https://m.youtube.com/watch?v=TJQbenHr46A&pp=ygUJUHJpbWVhZ2Vu

Vi- Автор вопроса
Serg Gini
Вот тебе и го https://m.youtube.com/watch?v=TJQbe...

Видео из ютуба с шоуменом, это конечно сильно)

Vi
Видео из ютуба с шоуменом, это конечно сильно)

Там статья же важнее) точнее там пост

Vi- Автор вопроса
Serg Gini
Вот тебе и го https://m.youtube.com/watch?v=TJQbe...

Там же написано. Неопытная команда решила написать на Го критически важную часть. На этом можно было закончить. Дайте такие условия в любом языке, вероятно вы получите такой же результат.

Vi
Там же написано. Неопытная команда решила написать...

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

Vi- Автор вопроса
Aleksandr Druzhinin
Ну как бы гоу позиционируется как раз как язык для...

Новички не пишут критически важные вещи на лямы долларов, это абсурд. Если у людей управляющий состав головой не думает, причем тут го? В говэй почти все покрывается тестами, но я так и не понял...почему у них тест не показал этого. Это какой то бред... Го создавался как язык, который поймет даже студент, но это не значит что студент сможет написать правильный код. Надо думать, но нынче модно не думать. Винить языки и пытаться все прибить гвоздями, потом за это переплачивать.

Aleksandr Druzhinin
Ну как бы гоу позиционируется как раз как язык для...

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

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

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

Vi
Новички не пишут критически важные вещи на лямы до...

его на заменю плюсов делали, тогда формулировка цели понятна становится

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
4
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта