Size: a a a

2020 February 23

OK

Oleg Kovalov in Go-go!
Roman Sharkov
от хорошей системы типов я бы ожидал, что nil в *T передать было бы нельзя 🙂
если нужен nil тогда *T | nil или сокращённо ?*T

но в Go у нас в первую очередь прагматичность, не безопасность.
вот про безопасность  стоит уточнять _type_ safety
источник

DP

Daniel Podolsky in Go-go!
Roman Sharkov
от хорошей системы типов я бы ожидал, что nil в *T передать было бы нельзя 🙂
если нужен nil тогда *T | nil или сокращённо ?*T

но в Go у нас в первую очередь прагматичность, не безопасность.
как бы ты хотел, чтобы система типов это контролировала?
источник

RS

Roman Sharkov in Go-go!
а кто это
ну нас как бы носом тыкают в err и это имеется в виду
я прекрасно понимаю что речь об explicit error handling, просто я устал слышать “это делает язык надёжным” - вот конкретно с надёжностью это имеет мало общего. Да, более простой код может способствовать надёжности, но он её не гарантирует.
источник

RS

Roman Sharkov in Go-go!
Daniel Podolsky
как бы ты хотел, чтобы система типов это контролировала?
в *T можно записать только &T{} или new(T), но только не nil
в ?*T можно записать nil, но прежде чем использовать его значение - его нужно проверить на nil
источник

а

а кто это in Go-go!
Roman Sharkov
я прекрасно понимаю что речь об explicit error handling, просто я устал слышать “это делает язык надёжным” - вот конкретно с надёжностью это имеет мало общего. Да, более простой код может способствовать надёжности, но он её не гарантирует.
говорят это делает язык более надёжным, есть разница
источник

OK

Oleg Kovalov in Go-go!
а кто это
говорят это делает язык более надёжным, есть разница
+
источник

DP

Daniel Podolsky in Go-go!
Roman Sharkov
в *T можно записать только &T{} или new(T), но только не nil
в ?*T можно записать nil, но прежде чем использовать его значение - его нужно проверить на nil
нарисуй линтер
источник

RS

Roman Sharkov in Go-go!
а кто это
говорят это делает язык более надёжным, есть разница
https://golang.org

увы, reliable это, ИМХО, большое заблуждение
источник

OK

Oleg Kovalov in Go-go!
Roman Sharkov
https://golang.org

увы, reliable это, ИМХО, большое заблуждение
ох-ох-ох-ох
источник

OK

Oleg Kovalov in Go-go!
нееееее
источник

а

а кто это in Go-go!
Roman Sharkov
https://golang.org

увы, reliable это, ИМХО, большое заблуждение
за пределы слайса не вылезете, buffer overflow не получите, достаточно надежно?
источник

OK

Oleg Kovalov in Go-go!
Daniel Podolsky
нарисуй линтер
тут SSA надо, там не все так просто становится
источник

OK

Oleg Kovalov in Go-go!
reliable это очень много больше, чем возможность передать nil
источник

OK

Oleg Kovalov in Go-go!
суда тогда и деление на 0 можно внести
источник

а

а кто это in Go-go!
/ будет возвращать Int?
источник

OK

Oleg Kovalov in Go-go!
а кто это
/ будет возвращать Int?
а?
источник

OK

Oleg Kovalov in Go-go!
ааа
источник

а

а кто это in Go-go!
а
источник

OK

Oleg Kovalov in Go-go!
наверн, кто знает
источник

OK

Oleg Kovalov in Go-go!
в любом случае, кидаться на reliable чуть опрометчиво
источник