←back to thread

333 points steveklabnik | 1 comments | | HN request time: 0s | source
Show context
sleepy_keita ◴[] No.45033134[source]
I find it interesting how Rust is gaining momentum in tooling like uv and now rv.
replies(2): >>45033154 #>>45033816 #
inopinatus ◴[] No.45033816[source]
Rust is the new C. Go had a shot but went in an applications direction. I predict that very soon, perhaps even inside of three decades, Rust will become the dominant, first-choice systems programming language.
replies(4): >>45034164 #>>45034544 #>>45034814 #>>45035389 #
hu3 ◴[] No.45034164[source]
Go can do just as well in tooling.

Microsoft chose Go for tsc rewrite. https://devblogs.microsoft.com/typescript/typescript-native-...

And then there's esbuild, also in Go, which revolutionized web bundling speed https://esbuild.github.io

replies(4): >>45034540 #>>45034880 #>>45034918 #>>45038999 #
bikitan ◴[] No.45034918[source]
It's important to note that Microsoft's choice of Go for tsgo was because it would be easier to port the existing TypeScript codebase due to the structural similarity of TypeScript and Go. If writing from scratch, they likely would not have chosen Go.

Which is not to say that Go can't do well in tooling. Only that Go was not necessarily their first choice.

replies(1): >>45034975 #
hu3 ◴[] No.45034975[source]
How is Go structurally similar to TypeScript?

It doesn't even have advanced generics like TypeScript, nor union types. No classes and no heritance either.

Unless you have a source, I'd say that's a very debatable speculation.

My guess is they chose Go for the same reason most users do: it's good enough, easy to grasp, has a decent std lib and is easy to grasp.

replies(2): >>45035067 #>>45035142 #
jtbaker ◴[] No.45035142[source]
https://www.youtube.com/watch?v=10qowKUW82U

Around the 13 minute mark, Anders goes into it. IIRC, the big things were the GC and them both supporting cyclic data structures.

replies(1): >>45035668 #
1. hu3 ◴[] No.45035668{3}[source]
Makes sense. Cyclic data with Rust is not trivial, to put it mildly. And GC does make things much easier.