Roman
Vadim
Roman
freezlite
кто то пользовался ключевым словом fallthrough ? )
Artem
Daniel
Я однажды
freezlite
я знаю когда )
freezlite
но я чет заюзал в проде и страшно
freezlite
может я его не так заюзал
freezlite
другой вопрос
freezlite
как работать все свободное время не отвлекаясь?
freezlite
когда работы скучной бывает
Daniel
Никак
Marperia
freezlite
надо стартапы пилить свои
freezlite
но мне лень
aadz
если лень, значит - не надо
David
Братья гоферы, хороша ли официальная документация? И если нет - что лучше прочитать? Увидел это ”reply.([]byte)” и понял, что нужно почитать доку...
Daniel
Хороша
Alexey
aadz
Официальная документация - суперская!
David
freezlite
слышь ты, ты че гонишь на нашу оф документацию
David
Спасибо!
freezlite
да я тебя
Tigran
Marperia
Tigran
Marperia
Возвращает ошибку и что-то ещё, на случай невозможности приведения.
aadz
а вы говорите, параметрический полиморфизм в Go надо. Чтобы еще все усложнить, когда народ и так-то уже не все понимает...
David
Tigran
Подозреваю, что c.Do() возвращает тебе interface{}
David
Почему не просто как в плюсах, а через точку?
Tigran
и ты предполагаешь, что положил туда []byte, и конвертируешь в []byte
aadz
в общем, похоже, что если выйдет Go 2, то его уже так не осилишь за пару дней с нуля... :(
Tigran
Tigran
в плюсах неудобный префиксный оператор
Daniel
У нас, повторю, есть и как в плюсах тоже
Daniel
Такой - нет
🏁Александр
а кто-то еще оборачивал в респонз вызовы в хендлерах?
🏁Александр
в отдельную структуру
aadz
(для тех, кто не понял, превожу вопрос гна нормальный язык: кто-то еще врапил респонс-колы в хендлерах?)
🏁Александр
*оборачивал в структуры, вызовы респонз в хендлерах 🙂
🏁Александр
в тестах просто странно смотриться
🏁Александр
у меня была безумная идея, в тестах вместо респонза специальную мок реализацию подсунуть
🏁Александр
и там уже вызывать ошибки теста
🏁Александр
но это "не прозрачно"
🏁Александр
наверно придется тестировать уже "результат хендлера" в виде json
Roman
Корригирую документ, описываю implicit casting и возникает вопрос, а нужен ли в таком случае вообще explicit casting?!
func ReturnConst() const []int {
return []int {1, 2, 3} // Implicit cast
}
var variable const []int = []int {1, 2, 3} // Implicit cast
func TakeConst(v const []int) { /*…*/ }
TakeConst([]int {1, 2, 3}) // Implicit cast
единственная ситуация где explicit cast может пригодиться это short variable declaration:
immutVec := const([]int {1, 2, 3})
// Or:
immutVec2 := const * const T (&T{})
но стоит ли это учитывать?
aadz
бНОПНЯ апперед :)
Roman
или проще сказать: „хочешь иммутабелый? используй var declaration syntax“
aadz
Корригирую документ, описываю implicit casting и возникает вопрос, а нужен ли в таком случае вообще explicit casting?!
func ReturnConst() const []int {
return []int {1, 2, 3} // Implicit cast
}
var variable const []int = []int {1, 2, 3} // Implicit cast
func TakeConst(v const []int) { /*…*/ }
TakeConst([]int {1, 2, 3}) // Implicit cast
единственная ситуация где explicit cast может пригодиться это short variable declaration:
immutVec := const([]int {1, 2, 3})
// Or:
immutVec2 := const * const T (&T{})
но стоит ли это учитывать?
У меня уже давно какае-то чувство, что ты хочешь все усложнить... Это же все потом будет понять и забить в мозг так же сложно, как и плюсы... Не?
aadz
Изначально ведь авторы ориентировались на простую русскую девушку-первокурсницу с экономики, которой с какого-то перепуга вместо Pascal принялись преподавать Go. И у ей зачеты по нему еще не сдаты... Надо чтобы все было проще, иначе девушка просто не осилит и вылетит с института
Vladislav
aadz
:)
Roman
У меня уже давно какае-то чувство, что ты хочешь все усложнить... Это же все потом будет понять и забить в мозг так же сложно, как и плюсы... Не?
нет, и я уже сотню раз наверное объяснил почему это не так 🙂
например, C как язык ещё проще чем Go, от этого на нём становится легче писать? Нет, потому-что он предоставляет разработчику или команде возможность очень легко выстрелить себе в ногу.
Immutable types это инструмент защиты от случайных выстрелов в ногу, которые даже сложно заметить, поскольку такие выстрели в основном проходят бесболезнено, пока не заметишь что нога вся в крови…
Mutable shared state is the root of all evil, especially in concurrent environments!
aadz
НЕ становится!
aadz
Я не против декларирования иммутабельности! Я просто за девушек будущего переживаю!
Roman
aadz
первокурсница все сможет! :)
Roman
шутки в сторону, иммутабельность особенно в Go - неизбежна для сохранения актуальности языка. Я не понимаю, почему мы опять поднимаем эту тему.
Roman
Корригирую документ, описываю implicit casting и возникает вопрос, а нужен ли в таком случае вообще explicit casting?!
func ReturnConst() const []int {
return []int {1, 2, 3} // Implicit cast
}
var variable const []int = []int {1, 2, 3} // Implicit cast
func TakeConst(v const []int) { /*…*/ }
TakeConst([]int {1, 2, 3}) // Implicit cast
единственная ситуация где explicit cast может пригодиться это short variable declaration:
immutVec := const([]int {1, 2, 3})
// Or:
immutVec2 := const * const T (&T{})
но стоит ли это учитывать?
меня больше интересует мнение группы по этому вопросу, если такое мнение имеется
Илья
насколько я знаю Go, везде, кроме работы с безтиповым констами, все касты explicit
aadz
Хотя, наверное, любой искусственный язык по ходу его использования и изменения только усложняется... Ничего не поделаешь,...
Aleksandr
aadz
ну, вроде, одно из того, что нельзя наывать, уже, кажется, будет :)
aadz
Aleksandr
я очень легко читаю, с юмором. Но тебе бы советовал в юмором завязать - он у тебя достаточно специфический и в массе своей несмешной