4 ms·
It is super weird to me that no big compile-to-Go languages have emerged. It doesn't seem like anyone is even trying! Why not?
by nemo1618 5y ago
It is super weird to me that no big compile-to-Go languages have emerged. It doesn't seem like anyone is even trying! Why not?
- jmnicolas 5y ago> Why not? Why? What would be the point except as a personal challenge?
- Zababa 5y agoMost criticisms of Go could be adressed by a language with a Hindley-Milner type system: https://go.dev/blog/survey2020/missing_features.svg https://go.dev/blog/survey2020/missing_features.svg from https://go.dev/blog/survey2020-results https://go.dev/blog/survey2020-results. Having a ML-like that compiles to Go could solve all those issues, while still keeping the great ecosystem that Go managed to build. Just like with Scala, this new language could allow people to see if that's what they really want, and offers to the Go team possibilities of evolution without the need to commit completly to them.
- pjmlp 5y agoFor that I already have OCaml, Haskell and F#, so why bother?
- Zababa 5y agoOCaml and Haskell don't have Go's ecosystem in terms of quantity. For F#, can it be compile to a binary like Go? I searched for a bit and couldn't find a good answer. Another thing is that people like to stay in their ecosystems. If you already have a large codebase in Go, internal libraries, etc, switching could be difficult.
- pjmlp 5y agoQuantity isn't a synonym for quality. There are a couple of ways to compile .NET code into native code. Since version 1.0 NGEN was part of the SDK, although its main purpose was faster startup with dynamic linking. On Microsoft side there has been CoreRT, NativeAOT, .NET Native. Mono has had AOT support since ages and it is anyway required for iOS deployments. Other than that several community efforts have taken place as well, for example WebAssembly. https://fsbolero.io/ https://fsbolero.io/
- Zababa 5y agoYou're right about quantity and quality, that's why I mentionned quantity precisely. Quantity usually means that most of the stuff has already been made by someone, and people seem to value that a lot. I'll add that the documentation of your average OCaml or Haskell library is not the best, while from experience Go is a bit better (usually there are a few basic examples). Thank you for the information on .NET AOT.