Size: a a a

2017 December 25

R

Rocket in DeСenter Dev
Yevhenii Babichenko
Да как раз-таки проще
Рантайм сложный получается. Ну и да, исключения это совсем не просто.

Была одна сетевая библиотека, которая использовала эксепшены как message passing между лайерами. И иногда они вылизали наружу.

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

Да, это было на Delphi. Но я и на плюсах такой код видел.

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

Хотя портянки if err != 0 расстраивают, конечно.
источник

YB

Yevhenii Babichenko in DeСenter Dev
Вот именно портянки и бесят. Про рантайм согласен, но в том же Rust для этого придумали Result
источник

YB

Yevhenii Babichenko in DeСenter Dev
Хотя о чём это я, в Go ведь нет никакого аналога шаблонов
источник

YB

Yevhenii Babichenko in DeСenter Dev
Ну и распространение ошибок дальше по стеку в Rust выглядит так же по-дурацки, как и в Go.
источник

YB

Yevhenii Babichenko in DeСenter Dev
А хотя не, вру, есть вариант нормальный. Просто в Rust я начал зарываться буквально на этой неделе, могу фигню пороть иногда.
источник

YB

Yevhenii Babichenko in DeСenter Dev
> Была одна сетевая библиотека, которая использовала эксепшены как message passing между лайерами
Это нецелевое использование, за такое надо кончености отрывать.
источник

R

Rocket in DeСenter Dev
Yevhenii Babichenko
> Была одна сетевая библиотека, которая использовала эксепшены как message passing между лайерами
Это нецелевое использование, за такое надо кончености отрывать.
И тем не менее, если что-то можно использовать неправильно, это будут использовать неправильно. Библиотека эта 3rdparty, но шла в штатной поставке Delphi 7.
источник

R

Rocket in DeСenter Dev
Гугл большая конторка. И, видимо, это им надоело.
источник

YB

Yevhenii Babichenko in DeСenter Dev
Ещё GC странно выглядит, мне почему-то кажется, что это могло работать иначе
источник

R

Rocket in DeСenter Dev
Yevhenii Babichenko
Ещё GC странно выглядит, мне почему-то кажется, что это могло работать иначе
Ну уж как есть, чо.
источник

S

ShelterSkelter in DeСenter Dev
> плюс в том, что он для тупых
> минус в этом же, МОГЛИ БЫ И ИСКЛЮЧЕНИЙ ЗАВЕЗТИ

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

S

ShelterSkelter in DeСenter Dev
А, нет, ещё Дима профессионеал тут ахаха)
источник

DS

Dmitry S in DeСenter Dev
Го не хватает только дженериков. В остальном он очень хорошо спроектирован.
Просто не надо на нем писать как на Python/Java/C++
Только тогда вы сможете изучить язык (а не синтаксис).
источник

AZ

Anton Zhukov in DeСenter Dev
Плюс один
источник

S

ShelterSkelter in DeСenter Dev
А кто-нибудь делал или знает тех, кто делал, ревью проекта в SEC перед ICO?
источник

DM

Dmitry Mishunin | HashEx in DeСenter Dev
Элемент групп
источник

YB

Yevhenii Babichenko in DeСenter Dev
ShelterSkelter
> плюс в том, что он для тупых
> минус в этом же, МОГЛИ БЫ И ИСКЛЮЧЕНИЙ ЗАВЕЗТИ

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

S

ShelterSkelter in DeСenter Dev
Ты всегда можешь написать предложение и внести изменение в Go по сценарию, описанному осенью Робом Пайком. Чтобы не быть голословным.
источник

DM

Dmitry Mishunin | HashEx in DeСenter Dev
Хватит правдорубствовать
источник

DM

Dmitry Mishunin | HashEx in DeСenter Dev
Вы слишком импульсивны для жителя Швейцарии
источник