the Clive[1] system uses a fork of the Go language which allows readers to close channels (I think it's the most significant difference between the languages, if not the only one):
http://syssoftware.blogspot.com/2015/06/lsub-go-changes.html
--
http://syssoftware.blogspot.com/2015/06/lsub-go-changes.html
--