Welcome to a tour of Go in Haskell

Welcome to a tour of Go in Haskell. This site will show how to write the concurrency section of A Tour of Go in Haskell. A Tour of Go is a famous tutorial of Go. Haskell has concurrency features similar to Go: lightweight thread, channel, etc.. So it should be interesting to compare equivalent concurrent programs in Haskell and Go.

For Haskell users : In order to show the similarities with Go clearly, this site exclusively uses the async package and the stm package for concurrency. Concurrency is represented explicitly and used in IO. Eval monad and Par monad are not used. And, in order to make it easier for non-Haskell users, several famous utility functions and excessive point-free style are avoided.