On Friday, 2 June 2017 15:59:41 UTC+3, gary.wi...@victoriaplumb.com wrote: > > Generics enable more than just replacing loops. For example, they can > enable libraries of generic algorithms to be used with any type of array. > Here's an example: > > foo := GetArray() > result := foo.Take(10).map(...).Sort(...).Reduce(...) >
Why stop there? It also could be: *result := average wage by country* This is much more readable than the map/reduce stuff. > That is simple to understand and in one line of code. Imagine the > acrobatics (and lines of code) needed to do this using Go's loops! > > You can read my full article on why Go needs generics here: > http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/ > > <http://www.google.com/url?q=http%3A%2F%2Fnomad.so%2F2015%2F03%2Fwhy-gos-design-is-a-disservice-to-intelligent-programmers%2F&sa=D&sntz=1&usg=AFQjCNGSZkU39JA53JKzDytwejH2atM4ew> > > On Friday, 2 June 2017 09:17:54 UTC+1, Florin Pățan wrote: >> >> Since everyone thinks it but nobody bothers to reply to it: this whole >> thing you propose can be currently done with a for loop, which not only is >> explicit about what it doing, but it also lets you control if you want to >> exit early from it and so on. Complicating the whole language because >> something is cool (yet looks like a really complex thing that you need to >> think about while reading the code) is in no one's benefit. Stop trying to >> avoid a couple of extra rows of for {} (where the third row is literally >> just an "}") and start embracing the fact that you can understand the code >> by looking at it and not apply any complex mental acrobatics to figure out >> what those three lines of code are doing. Your future self/person after you >> will thank you for that. > > -- 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.