Go was born out of frustration with existing languages and environments for systems programming.
Thus spake the Go FAQ. I empathize. I dislike C++ and Java so much that I’ve stayed with C. More precisely, I’ve stayed with GNU C, because of lexical closures and a few other extensions.
Could Go replace C? Does Go truly combine efficient compilation, efficient execution, and ease of use? The best way to judge was to try real systems programming with Go.
A good place to start is the list of GNU Core Utilities. Here are my experiences with implementing some of the simpler utilities.
Thanks to Ivan Krasin, Carlos Cobo, Karl Magdsick, Michael Gehring, and Bob Appleyard for suggestions.