First, congratulations on the working compiler! Very cool to try out generics in Go.
I was experimenting <https://go2goplay.golang.org/p/TCJGEprQ13K> with some simple generic functions and felt the need for the zero value of a generic type. I've read the discussion anticipated in your proposal <https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md#the-zero-value>, so I'd like to use this topic just to provide my sentiment, and perhaps gather it from others. In my opinion, the most Go-like proposal <https://github.com/golang/go/issues/19642> is using '_' to signify the zero value in RHS. We are already used to having '_' in LHS to accept whatever type, and although the meaning is slightly changed (from 'whatever' to 'zero'), it's conceptually close. I'm opposed to a change that uses '{}' or 'T{}' to mean zero type, as in this proposal <https://github.com/golang/go/issues/12854>, because in my mind curly braces are used for composite types. Imagining that 'T' is a placeholder, It's weird replacing 'T{}' for 'int{}', for example. I'm super in favor of having a leaner syntax for composite types, though 😁. Whatever is decided, please don't punt on this issue and recommend '*new(T)'. That's really ugly and feels wrong to allocate and immediately dereference the value just to circumvent a syntax change. Even if the compiler is smart enough not to allocate anything, that's what's written in the source code. Thanks. -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/a061b28e-3872-4c47-97ad-a3651f8a8b2bo%40googlegroups.com.