Daniel
Libc и threads -.это, считай, часть ядра
aadz
угу
Daniel
А при чем тут докер?
Eugenii
aadz
сам не знаю, но, говорят, он ото всего спасает :)
Daniel
Именно для libc и threads докер не нужен - go сам с ними умеет работать
aadz
OK! хотя я уже как-то рассказывал, что уметь-то он умеет, но собирать надо тогда там, где оно работает :(
Daniel
Херня
Dmitriy
А в чем проблема динамического libc?
aadz
ну, это просто мой личный опыт
Daniel
Бывают проблемы, если в альпайне собрать
Daniel
Ну так не надо в альпайне собирать
aadz
Я ни с чем не знаю проблем, тупо копируя бинарник с Ubuntu 16 на оно же 12. А между убунтой и CentOS - один раз были реальные проблемы. Просто надо было там и собирать.
Daniel
Коллега, это немножко чушь
aadz
почему?
Daniel
Не надо свои - редкие - проблемы генерализировать
aadz
как скажешь :(
aadz
что-то все мне сегодня говорят, что я гоню чушь... Хнык :(
Daniel
Я вот на маке собираю, и ни разу не видал проблем
Daniel
Это почему?
aadz
ну, ты визука, видимо
l3xxxy
l3xxxy
🏁Александр
Я вот на маке собираю, и ни разу не видал проблем
у меня тут идеологический вопрос есть, если мы по гоу вей должны всегда интерфейсы класть туда где используем эту зависимость, то как это вяжеться с DAO в хендлерах? получается что DAO интерфейс должен быть именно там O_o
aadz
да, видимо, юмор у мне я и правда не смешной :)
Aleksandr
Aleksandr
type AddUserHandler struct {
service UserService
}
type UserService interface {
AddUser(user User)
}
Aleksandr
логично?
Anonymous
Почему это так работает? https://play.golang.org/p/RhZh6EwlVQh
Я понимаю что int нужно привести к duration, но не понимаю почему если просто ввести число это работает
Daniel
потому, что нетипизованная константа преобразуется к нужному типу автоматически
Daniel
https://play.golang.org/p/vOsehho5kK6
Anonymous
ну так она к инту преобразовалась
Anonymous
в чем разница между тем интом к которому привела нетипизированная константа и тем интом который указан?
aadz
aadz
и преобразуется компилятором, надо заметить, а не абы когда и кем
aadz
Anonymous
т.е. на момент использования внутри fmt.Println(time.Second * i) i имеет тип Duration?
aadz
time.Duration?
aadz
но компилятор может и не знать, что такое i. тут телепатов нет, как уже неоднокнратно замечено
Daniel
ну так она к инту преобразовалась
она в разных местах к разному преобразовалась. там, где компилятор не смог из контекста понять, к чему преобразовать, он преобразовал к int
Daniel
aadz
литерал
Roman
ну всё собсвенно, https://github.com/romshark/Go-2-Proposal---Immutability/issues/14
теперь mut -> immut кастится implicit:
func M() const [] * const T {
return []*T {&T{}, &T{}} // Implicit cast
}
Daniel
коллега, не тупите
Anonymous
хорошо, спасибо, прояснилось
aadz
коллега, не тупите
Может, я простьо хочу, чтобы ты был строже, хотя у меня юмор не смешной и ты можешь все не так понять :)
Anonymous
Roman
Anonymous
Это язык Go?
aadz
нет. это канал про аниме
Roman
Это язык Go?
это потенциальный, усовершенвстованный Go))
Roman
Go M1 😆
Anonymous
а почему принимаемые аргументы не в скобках?
Anonymous
const []…
Roman
Sergey
Илья
Anonymous
func M() const [] * const T {…}
Daniel
Anonymous
Что это после скобок?
Anonymous
Указатель, к чему это?
Roman
Roman
Что это после скобок?
это возвратный сложный тип, а именно немутабельный слайс указателей на немутабельные инстансы T
Daniel
и он прав - твой пропозал по когнитивной сложности близок ко всей текущей спеке go вместе взятой
Anonymous
Daniel
в с++ и не такое есть
Roman
для того чтоб понять пропосал достаточно прочитать 1. Introduction:
https://github.com/romshark/Go-2-Proposal---Immutability#1-introduction
там всего 5 основных правил
Daniel
это ты коксу будешь рассказывать
Daniel
а мне лучше расскажи - для каких целей ты хочешь возвращать константы?
Daniel
для каких целей нужен константный слайс неконстантных указателей?
Roman
Daniel
не тупи
aadz
Anonymous