&gt; because it has platform specific C and assembly code from cgo&#x27;s runtime<p>I&#x27;m not sure what you mean by &quot;cgo&#x27;s runtime&quot;, but go runtime is in go since 1.5. Some bits are still written in assembly but that&#x27;s mainly for performance.<p>I don&#x27;t think targeting every arch (and virtual archs like asm.js you mention [though there is a 3rd party GopherJS]) and OS out there was ever their purpose.<p>In case you&#x27;re interested, there is llgo which has recently been merged into LLVM. It&#x27;s still not practical however.<p>&gt; But I guess Google just hates Apple that much?<p>I don&#x27;t understand what this is supposed to mean since LLVM does not belong to Apple, and Google is a heavy user and contributer thereof.