On Tue, Oct 16, 2018 at 3:33 AM alanfo <alan.f...@gmail.com> wrote: > I would also disallow overloading of the =, :=, <-, ..., [], {}, () and > yes - equality operators - as well because I believe to do otherwise would > be very confusing. >
If overloading [] were disallowed, how would one write a generic function taking a single argument of type either []int or a user-defined type with similar behavior, and returning the sum of the elements? Sort of the marriage of these two functions: func SumIntSlice(s []int) int { sum := 0 for _, i := range s { sum += i } return sum } type IntList interface { Len() int At(int) int } func SumIntList(l IntList) int { sum := 0 for n := 0; n < l.Len(); n++ { sum += l.At(n) } return sum } -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.