Daniel
в первую очередь потому, что слишком многовариантные конструкции позволяет делать
Daniel
по мне, так надо выделить два-три основных применения а все остальное пользователю конфигурять не давать
Alexander
щас бы иммутабельность на уровне языка, как в кложурке.
Daniel
кложурка - она ведь лисп. а лисп - это чистые функции
Roman
@onokonem кстати как думаешь кому можно бы было на review отправить? кто будет заинтересован?
Daniel
пока непонятно
Daniel
у нас тут или хейтеры go, или хейтеры иммутабельности :)
Daniel
Roman
аналогично, в любом случае ещё на форум выставлю как только последнии штрихи дорисую
Roman
у нас тут или хейтеры go, или хейтеры иммутабельности :)
хейтеров иммутабельности существовать не может, могут существовать только люди которые работают одни над проектами не более 5к LOC и следственно не понимают зачем всё это ну и конечно безответственные люди которым "и так сойдёт, меня это не затронет"
Roman
software engineering is all about trade offs
Anonymous
Кстати, я вот всегда замечал что последователи ФП яростно дрочатъ на иммутабильность, неизменность данных (из-за этого не юзают циклы, предпочитая рекурсию и пр.). Но почему в проде всякие Хаскели и Кложуры абсолютно не популярны?
Roman
Pavel
Roman
Subbotin
Pavel
Daniel
вручную их анализировать, что ли?!
Pavel
Alexey
Парни, а как вы организовываете свой код?
Придерживаетесь ли вы правил дядюшки боба (про 4 layer), или же вы все разделяете? К примеру go way, это иметь в домене entity и интефейсы сервсиов, репозиториев. А дробить пакеты под enity, интерфейсами для репозиториев, сервисов и хэндлеров считается вроде как не кошерно.
Pavel
Эти данные в пропозале только поднимут ему ценность.
Roman
Просто ты давишь за что-то абстрактное. Но у тебя есть большие открытые проекты и куча багов и PR. Покажи примеры.
Вы мне за это заплатите?)) Мне сейчас никто за этот пропосал не платит, я можно сказать дарю комьюнити своё время ради общего блага. Ты не поверишь сколько нервов и времени у меня уже ушло на данный документ а ещё предстоит сравнивать его с другими предложениями.
Я вам просто скажу, что вид homo sapiens сделало доминирующим 2 способности:
1. способность абстрактного мышления
2. способность принимать гипотезы всерьёз
если вы считаете, что описанные сценарии не могут быть опасными, тогда я вам ничем помочь не могу.
Pavel
Я не понял тут отрицают что данные по большим открытым проектам сделают пропозал лучше?
Alexey
Daniel
жалуются на свою неспособность быстро такие данные собрать
Pavel
В чем проблема, ты говоришь что в больших проектах — проблемы. Факт чек читателям делать что ли?
snip
Если проблема есть значит и реальные кейсы должны быть иначе это надуманная проблема
Pavel
Daniel
хотят - пусть делают
Pavel
Топовый НЛП.
Roman
@selslack Павел, вы не поняли сути моих слов.
Суть проста: я человек. У меня 14 часов в день максимум. Я просто не успеваю. Детальный анализ проблем таких проектов обойдётся недёшево.
Если же это был намёк мне помочь подкрепить документ аргументами из больших проектов на Go - с радостью! Очень буду рад!
Daniel
Топовый НЛП.
коллега, я в шаге от того, чтобы выдать вам ro
Eugene
snip
Eugene
Roman
большинство концепций достаточно объяснить приближенными примерами, потому-что у хорошего разработчика достаточно хорошее абстрактное мышление для выявления смысла и выгоды
snip
Ну вот го это не про концепции это про реалии, если концепция верная но в реальности не встречается значит не нужно
snip
В го нет многих правильных концепций и подозреваю, что многие из них никогда не появятся
Eugene
Pavel
Roman
Ну вот го это не про концепции это про реалии, если концепция верная но в реальности не встречается значит не нужно
Go это не про "банальную простоту синтаксиса". Go это про устранение легаси, иной подход к конкуррентности и устранение неправильных концепций таких как наследование имплементации и прочих, которые показали себя нехорошо в прошлом.
mutable shared state встречается в реальности в абсолютно каждом вашем проекте! Будь то 1к LOC или 2kk LOC. Slice aliasing это mutable shared state, и вы с ним бессомненно часто встречаетесь, вы просто привыкли с ним жить и копировать слайсы (slow + boilerplate).
Pointer aliasing это mutable shared state и встречается он не реже.
Roman
а то с чем мы встречаемся абсолютно всегда - стоит упрощать и делать более безопасным в применении, о чём собственно вся эта тема
A
Вот что они в Го 2 с легаси будут делать?!
Roman
snip
Roman
Roman
Roman
если вы её не видите или видить не хотите, тогда конечно для вас её нет))
snip
Ну вот пока никто не привёл примеров из реальной жизни, типа за последний месяц три бага словил которых не было бы если бы был const
snip
snip
Pavel
Pavel
У вас будет больше оплачиваемого времени улучшать го.
Peter
Иногда конечно хочется объявить константную ошибку или массив, но на практике оказывается, что это не особенно нужно
Pavel
Платят там вроде нормасик.
Eugene
Alexey
Roman
Alexey
ну, сейчас тебя заклюют )
Alexey
тут не любят предложений добавить "лишних" фич
Roman
я-ж евангелист))
Alexey
Daniel
я уже говорил и повторю
Alexey
Это там еще строчки иммутабельные
Daniel
единственный реалистичный сценарий - это сделать линтер и сделать его популярным.
а уж потом и разрабы go подтянутся