> No generic support (What language designer in 2014 builds
> something that idiomatically requires casting to the top
> type? That was precisely a huge problem for Java
> you can't extend important built-ins like range or make()
This was a deliberate design decision. When the Go team was asked about what they like about Go one answer was:
"It's very simple to understand, and the code that
I read on the page is the code that is executed.
When I iterate over a slice, there's not some chance that
there's an iterator implementation that fetches a
file from a web server in Romania and serves me some
JSON or something.
Instead, the language is very deliberately simple and
contained so that it's very easy to reason about code that
you're reading."
https://www.youtube.com/watch?v=sln-gJaURzk
>Erik Meijer has a more nuanced view on the topic than you
I'd rather not watch a 40 minute video. Care to summarize?
>"and the code that I read on the page is the code that is executed... the language is very deliberately simple and contained"
This is a dumb argument. The same thing can be said about assembly, and in fact this property doesn't hold true once you introduce abstraction through functions.
All well-written code is easy to read, and most poorly-written code is hard to read. Go does not change that.
Even a seasoned Haskell programmer like Erik Meijer has a more nuanced view on the topic than you: https://www.youtube.com/watch?v=on5DeUyWDqI&t=23m40s
> you can't extend important built-ins like range or make()
This was a deliberate design decision. When the Go team was asked about what they like about Go one answer was:
"It's very simple to understand, and the code that I read on the page is the code that is executed.
When I iterate over a slice, there's not some chance that there's an iterator implementation that fetches a file from a web server in Romania and serves me some JSON or something.
Instead, the language is very deliberately simple and contained so that it's very easy to reason about code that you're reading." https://www.youtube.com/watch?v=sln-gJaURzk