Genéricos (adicionados em Go 1.18) permitem que você escreva funções e tipos que funcionam com múltiplos tipos através de parâmetros de tipo, mantendo segurança de tipo em tempo de compilação. Eles eliminam o antigo dilema de duplicar código por tipo ou perder segurança com interface{}.
O problema que genéricos resolvem
{ ... }
{ ... }
{} { ... }
