Go Sieve

The newly announced Go language set the Internet abuzz this week. I’m not going to write extensively about it, partly because I haven’t had much time to examine it in detail, and partly because other people have already written a lot about it. It is interesting to note that CHP and Go share a common heritage in Hoare and Roscoe’s CSP (Communicating Sequential Processes). I will be mentioning CSP in a couple of posts next week; CSP is a process calculus used to describe message-passing concurrent systems.

CSP inspired occam, which in turn became occam-pi (using ideas from the pi-calculus), which is still under active development. occam and occam-pi also inspired various libraries for CSP-style concurrency, such as JCSP, C++CSP, PyCSP, and many more including CHP. But CSP also inspired Newsqueak, and Rob Pike went on from that to work on Limbo and now Go which retain the CSP influence. It’s certainly nice to see other people looking at message-passing concurrency.