256 karma · joined March 21, 2015
This isn't too much of a problem if your doing all supervised learning with batch operations because the speedup of a GPU over a bigger operation outweighs the FFI latency.
However, it's a problem that doesn't appear to have a solution due to Go's memory management choices, and will hamper it ever being used for accelerated computing problems. This is one of the reasons Rust moved to using ownership rules.
You can read a bit more at https://dave.cheney.net/2016/01/18/cgo-is-not-go
This solves some of the pain points but is still fatally flawed as any other Go ML tool in that it can’t accelerate due to the Go<->C FFI.
Until that issue is resolved Go simply won’t be broadly accepted in data science.
Redhat, Microsoft and vmware are major contributors to the product. Few of the founders work for Google anymore. Google probably has the largest influence but it is very much a community.
Maybe those projections are wrong, and I certainly love all the energy in this space, but it feels like a lot of investors are going to get burned.
Julia has done a great job at marketing itself as the language built for modern numerical computing by numerical computing people. They have effectively recruited a lot of the scientific community to build libraries for it. I think the language is flawed is some deep ways, but there is a lot to learn in how they positioned themselves.
People are searching for a better language in this space and it's something that often needs a corporate backing. Google is aware of this problem and hired Chris Latner to fix it, its just a bit of unfortunate oversight, I guess we'll keep using Python for now.