Полный текст

Ошибки в Go уродливые. Однако за каждым из решений стоит определенная логика — дизайн языка не случаен. В одних случаях сохранялась обратная совместимость, в других — удавалось избежать усложнения, а в третьих — получалось добиться упрощения, чтобы сделать язык доступным для новичков и удобным для профессионалов.Go жертвует элегантностью в угоду предсказуемости и производительности. Например, отсутствие generics (до Go 1.18) было осознанным решением с целью не усложнять компилятор и не замедлять сборку. Странные вещи в Go могут доставлять боль, но могут приносить и пользу при хорошем понимании их назначении.Обсуждаем, почему Go такой странный и еще 7 холиварных тем про Golang.