ridiculous concurrency

Aug 12, 2014  

Ok, so I went through the Go Tour, and it’s pretty impressive; having this sort of super-fast edit-compile-run cycle is something usually associated with Javascript-ish languages, certainly not a statically compiled systems language.

One of the big selling points of Go (apart from its “familiar” yet clean syntax) is the ubiquitous concurrency primitives available. Yes, you could obviously do the same in other languages (see a good Clojure translation here), but channels and goroutines being first-class objects in Go, passing them is as normal as ints and strings.

Except its not really that normal, is it? But it should be. So I thought, why not try out something that I called “ridiculous concurrency”, a sort of roundabout way of doing normal stuff, while overusing concurrency.

This isn’t meant to be a good way of showing how to do anything, but rather making it easy to abuse concurrency, so that you can later use it.