Writing Network Drivers in Go [pdf]
This is something I&#x27;ve noticed recently -- more and more researchers are starting to write reference implementation code for networking and distributed systems in Golang. In my own head, it makes sense -- golang is simple to read if not verbose, doesn&#x27;t require crazy formatting, has excellent standard library support, and has relatively painless concurrency, and <i>can</i> be run as a scripting language. No it&#x27;s not as easy to get started with as Python, Ruby or Perl, but only one of those has easy-to-spawn native threads, nevermind lightweight coroutines (and the one with native threads encourages illegible code).<p>If you&#x27;re not doing type theory work or very specific exploration in a specific field, I don&#x27;t know another language that is so easy to get up and running with. On top of all this go&#x27;s performance is pretty great&#x2F;consistent as well, JS is the only other scripting language that comes close generally, but then you have to submit to the event loop.<p>I&#x27;ve always thought one of Go&#x27;s true killer features is how hard it makes cleverness.<p>I&#x27;m starting to seriously think Go&#x27;s popularity is going to continue shooting up. As I always note I think Go will supplant Java as the incumbent in the enterprise software in one or two decades max.<p>[EDIT] - Forgot to include the most recent example that made me think this: WPaxos(AKA WAN Paxos)[0] and the included github repo[1]. To be fair CASPaxos[2] included gryadka[3] which is in JS.<p>[0]: <a href="https:&#x2F;&#x2F;cse.buffalo.edu&#x2F;tech-reports&#x2F;2017-03.pdf" rel="nofollow">https:&#x2F;&#x2F;cse.buffalo.edu&#x2F;tech-reports&#x2F;2017-03.pdf</a><p>[1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;ailidani&#x2F;paxi" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ailidani&#x2F;paxi</a><p>[2]: <a href="https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1802.07000" rel="nofollow">https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1802.07000</a><p>[3]: <a href="https:&#x2F;&#x2F;github.com&#x2F;gryadka&#x2F;js" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;gryadka&#x2F;js</a>