However, it’s also important to choose the right tool for the job,
No, it's important to choose an adequate tool for the job, not the right one.
You will never know what pitfalls doing everything in go or Haskell would cause, you will just lament the lack of coprocesses or monads.