Also a reason why Golang isn't viable for DS/ML. I have 6 years of experience in Go, and I thought it would be easy to implement a PyTorch like library in a weekend, I had done so with Python and Julia previously. Go's lack of sum types is a huge restriction, once you hit this wall you realize it's the reason for a lot of wacky workaround in various libraries (especially any parsing libraries!)