> Go just isn’t the tool we thought for some jobs
Go made it explicitly clear when it was released that it was designed to be a language that felt dynamically-typed, but with performance closer to statically-typed languages, for only the particular niche of developing network servers.
Which job that needs to be a network server, where a dynamically-typed language is a appropriate, does Go fall short on?
One thing that has changed in the meantime is that many actually dynamically-typed languages have also figured out how to perform more like a statically-typed language. That might prompt you to just use one of those dynamically-typed languages instead, but I'm not sure that gives any reason to see Go as being less than it was before. It still fulfills the expectation of having performance more like a statically-typed language.
> Which job that needs to be a network server, where a dynamically-typed language is a appropriate, does Go fall short on?
A job where nanosecond routing decisions need to be made.
Which dynamically typed languages perform like a statically typed language?
I don’t know about that, it was called a systems language when it came out. By any common usage of the term, it’s definitely not that.