Eric, This is the sort of situation where a tool could help.
If the tool detects that you've written a generic type/function but only then instantiated it once, that could lead you to rewrite the type/function non-generically for the type(s) actually used in the instantiation. Alan On Tuesday, September 18, 2018 at 6:38:34 PM UTC+1, Eric Johnson wrote: > > > > On Tue, Sep 18, 2018 at 6:21 AM Robert Engels <ren...@ix.netcom.com > <javascript:>> wrote: > >> I am going to refer everyone involved in this discussion on generics to >> this once again. I know it is long, read the summary... but it’s important: >> >> >> https://www.researchgate.net/publication/236644412_Adoption_and_Use_of_Java_Generics >> > > I'm skimming that paper. Thanks for sharing. Paper definitely identifies > benefits for adding generics. > > This quote jumped out at me for its relevance to this discussion: > "We observed parameterization of 1152 types, but actually found about 46 % > of these types (532) only had exactly one type argument ever used > throughout the project’s history, suggesting that needless or premature > generification of objects occurs fairly frequently.We observed > parameterization of 1152 types, but actually found about 46 % of these > types (532) only had exactly one type argument ever used throughout the > project’s history, suggesting that needless or premature generification of > objects occurs fairly frequently." > > Put in the term of this discussion thread, the study notes that about 45% > of the time (for the Java projects studied), portions of the code get > harder to read, with little or no clear benefit. There's no basis for > thinking that the same problems will or won't occur with any generics added > to Go, but it seems like a reasonable place to point to for concerns > driving this thread. > > Eric. > > >> >> On Sep 18, 2018, at 7:52 AM, Wojciech S. Czarnecki <oh...@fairbe.org >> <javascript:>> wrote: >> >> On Tue, 18 Sep 2018 04:38:55 -0700 (PDT) >> ffm...@web.de <javascript:> wrote: >> >> Every average Joe Java boilerplate coder gets along with generics. >> >> Barely, if at all, understanding whats under. >> >> "Smart Copy Paste ... A book for normal programmers" >> >> https://www.amazon.com/Smart-Paste-Stack-Overflow-other-ebook/dp/B01EHI5RQM >> >> But even there you can manage without thinking and just doing >> >> trial and error if you wanted to. >> >> >> OP, I and many others want to defend Gol off this very attitude. >> Go is among few contemporary languages that allows me to fully >> understand what my resulting binary will do, down to the syscall >> level. Thats precious. >> >> >> I think it will neither be tricky to make use of nor to read the code. >> >> >> I claim opposite. All and any Gopher will be expected to cope with hard to >> read and yet harder to understand generic code. Even if she herself will >> vowed not to use it. In a short while we all will be obeying first Java's >> commandment "thou shalt not peek under". >> >> >> -- >> Wojciech S. Czarnecki >> << ^oo^ >> OHIR-RIPE >> >> -- >> 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...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> >> -- >> You received this message because you are subscribed to a topic in the >> Google Groups "golang-nuts" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/golang-nuts/3ia8XrUgqOg/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> golang-nuts...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > -- 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.