🕵🏻 Фишинг и инфоцыганство в тульповодстве - отличные подарки к моему скорому ДР: https://tulpawiki.org/blog/2021/11/tulpafail/
tulpawiki.org
TulpaWiki > SKOF | TulpaWiki
🏆 В этот раз было как-то совсем не густо. Так что я номинировал всё, во что я вообще играл из вышедшего в этом году.
Forwarded from How to Go wrong (Alexey Palazhchenko)
Заменил
на
и заплакал
var dbFound bool
for _, d := range dbs {
if d == db {
dbFound = true
break
}
}
на
dbFound := slices.Contains(dbs, db)
и заплакал
Forwarded from How to Go wrong (Alexey Palazhchenko)
Дженерики крутые, можно написать любую дженерик функцию. Давайте напишем дженерик функцию сравнения двух объектов через
Полчаса спустя…
И даже этого недостаточно для сравнения
Equal(T) bool (если есть) или ==.Полчаса спустя…
type Equaler[T any] interface { Equal(T) bool }
func Equal[T comparable](expected, actual T) bool { ... }
func EqualEqualers[T any](e1 Equaler[T], e2 T) bool { ... }
func EqualSlices[T comparable](s1, s2 []T) bool { ... }
func EqualMaps[M1, M2 ~map[K]V, K, V comparable](m1 M1, m2 M2) bool { ... }
И даже этого недостаточно для сравнения
map[string]net.IP: net.IP – слайс, а слайсы не comparable.Forwarded from Neural Meduza
«Ради Христа, запретите соцсети, потому что там плохо»