I would say that this is because the language doesn't provide a way to
write what the spec says. The spec says "The built-in functions min
and max compute the smallest—or largest, respectively—value of a fixed
number of arguments of ordered types. There must be at least one
argument." The language doesn't support writing that function
declaration. That is, the declaration is not really fn(T, ...T). It's
fn(T, T, T, ...) where there must be at least one value.
We could change the definition of min/max to permit writing max(42,
s...). But today the spec does not permit that. And to me the change
doesn't seem worth making. We already have slices.Min and slices.Max.
Ian