Roman
дата сатанисты любят баловаться интерпретируемыми, особенно когда из юпитера сидят и по 100 раз один кусок запускают
дак разница между компиляцией и интерпретацией там должна же быть незначительной?
Artem
дак разница между компиляцией и интерпретацией там должна же быть незначительной?
не, ты такой запускаешь юпитер, там загружаешь себе в оперативку 5Гб фоточек и начинаешь дебажить нейронку. каждый раз загружать по 5Гб не кайф
Artem
я думал ML у нас на питоне?
все так думают, а его на R пишут
freezlite
кто то пользовался ключевым словом fallthrough ? )
Daniel
Я однажды
freezlite
я знаю когда )
freezlite
но я чет заюзал в проде и страшно
freezlite
может я его не так заюзал
freezlite
другой вопрос
freezlite
как работать все свободное время не отвлекаясь?
freezlite
когда работы скучной бывает
Daniel
Никак
freezlite
надо стартапы пилить свои
freezlite
но мне лень
aadz
если лень, значит - не надо
Marperia
надо стартапы пилить свои
Пили мои, уж я-то желание создавать умею.
David
Братья гоферы, хороша ли официальная документация? И если нет - что лучше прочитать? Увидел это ”reply.([]byte)” и понял, что нужно почитать доку...
Daniel
Хороша
aadz
Официальная документация - суперская!
David
freezlite
слышь ты, ты че гонишь на нашу оф документацию
David
Спасибо!
freezlite
да я тебя
David
Это просто приведение типов, если что
Но я так понимаю это приводит к byte array’у?
Marperia
Возвращает ошибку и что-то ещё, на случай невозможности приведения.
David
Ну да, к слайсу байтов
Но тогда что храниться в редисе?
Daniel
Обычное приведение типов же.
Учитывая, что у нас два приведения типов - доку почитать не вредно
aadz
а вы говорите, параметрический полиморфизм в Go надо. Чтобы еще все усложнить, когда народ и так-то уже не все понимает...
Tigran
Подозреваю, что c.Do() возвращает тебе interface{}
David
Почему не просто как в плюсах, а через точку?
Daniel
Но тогда что храниться в редисе?
Ворос не в том, что там хранится, а в том, что либа отдала. А отдала она interface{}
Tigran
и ты предполагаешь, что положил туда []byte, и конвертируешь в []byte
aadz
в общем, похоже, что если выйдет Go 2, то его уже так не осилишь за пару дней с нуля... :(
Tigran
в плюсах неудобный префиксный оператор
Daniel
У нас, повторю, есть и как в плюсах тоже
David
и ты предполагаешь, что положил туда []byte, и конвертируешь в []byte
Что же не буду вас всех отвлекать, пойду почитаю доку. Чувствую, что не понимаю простой базы
Tigran
У нас, повторю, есть и как в плюсах тоже
Кажется, имелась в виду форма (Type)value, такой вроде нет
Daniel
Такой - нет
Andrei 🦉
а вы говорите, параметрический полиморфизм в Go надо. Чтобы еще все усложнить, когда народ и так-то уже не все понимает...
такого вопроса просто бы не возникло, если бы в го был параметрическим полиморфизм из коробки, т.к. это приведение в 99% случаев появляется после использования пустых интерфейсов выше по коду
🏁Александр
а кто-то еще оборачивал в респонз вызовы в хендлерах?
🏁Александр
в отдельную структуру
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
Изначально ведь авторы ориентировались на простую русскую девушку-первокурсницу с экономики, которой с какого-то перепуга вместо Pascal принялись преподавать Go. И у ей зачеты по нему еще не сдаты... Надо чтобы все было проще, иначе девушка просто не осилит и вылетит с института
Vladislav
aadz
:)
Roman
У меня уже давно какае-то чувство, что ты хочешь все усложнить... Это же все потом будет понять и забить в мозг так же сложно, как и плюсы... Не?
нет, и я уже сотню раз наверное объяснил почему это не так 🙂 например, C как язык ещё проще чем Go, от этого на нём становится легче писать? Нет, потому-что он предоставляет разработчику или команде возможность очень легко выстрелить себе в ногу. Immutable types это инструмент защиты от случайных выстрелов в ногу, которые даже сложно заметить, поскольку такие выстрели в основном проходят бесболезнено, пока не заметишь что нога вся в крови… Mutable shared state is the root of all evil, especially in concurrent environments!
aadz
НЕ становится!
aadz
Я не против декларирования иммутабельности! Я просто за девушек будущего переживаю!
aadz
первокурсница все сможет! :)
Roman
шутки в сторону, иммутабельность особенно в Go - неизбежна для сохранения актуальности языка. Я не понимаю, почему мы опять поднимаем эту тему.
Илья
насколько я знаю Go, везде, кроме работы с безтиповым констами, все касты explicit
aadz
Хотя, наверное, любой искусственный язык по ходу его использования и изменения только усложняется... Ничего не поделаешь,...
Nikita
меня больше интересует мнение группы по этому вопросу, если такое мнение имеется
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет
Aleksandr
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет
в этом чате нет слов, которые нельзя называть. За шутки на эту тему очень сильно хочу банить.
aadz
ну, вроде, одно из того, что нельзя наывать, уже, кажется, будет :)
Roman
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет
генерики вносят в язык значительные изменения дизайна языка, библиотек и компилятора. Изменения которые требуют иммут типы просто смешны по сравнению с генериками, по спецификации, по обратной совместимости, и по компилятору.
aadz
в этом чате нет слов, которые нельзя называть. За шутки на эту тему очень сильно хочу банить.
ты вобще очень сильно хочешь банить. Легче надо читать, с юмором! :)
Aleksandr
я очень легко читаю, с юмором. Но тебе бы советовал в юмором завязать - он у тебя достаточно специфический и в массе своей несмешной