The Empty Interface and any
interface{} (or any in Go 1.18+) accepts any type. It is the escape hatch for truly generic containers before generics, but it loses type safety. With generics now available, prefer func Map[T, U any](s []T, f func(T) U) []U over interface{} solutions.