Here's an alternative Go generics syntax that uses the familiar <> but avoids parsing complexity by placing it to the left of the identifier. It's a bit (very?) unusual, but has the benefits of brevity and making the type parameters stand out.
Illustrated by converting some examples from Generics — Problem Overview :
type <T>List []T
func Keys(m map[K]V) []K