(no title)
Keyb0ardWarri0r | 11 months ago
You don't have to do the Big Rewrite™, you can simply migrate components one by one instead.
Keyb0ardWarri0r | 11 months ago
You don't have to do the Big Rewrite™, you can simply migrate components one by one instead.
TheCoreh|11 months ago
My understanding is that Microsoft chose Go precisely to avoid having to do a full rewrite. Of all the “modern” native/AoT compiled languages (Rust, Swift, Go, Zig) Go has the most straightforward 1:1 mapping in semantics with the original TypeScript/JavaScript, so that a tool-assisted translation of the whole codebase is feasible with bug-for-bug compatibility, and minimal support/utility code.
It would be of course _possible_ to port/translate it to any language (Including Rust) but you would essentially end up implementing a small JavaScript runtime and GC, with none or very little of the safety guarantees provided by Rust. (Rust's ownership model generally favors drastically different architectures.)
jeppester|11 months ago
It was about being able to have two codebases (old and new) that are so structurally similar, that it won't be a big deal to keep updating both
mdriley|11 months ago
aapoalas|11 months ago
In entirely unrelated news, I think Chrome should totally switch engines from V8 to a Rust built one, like hmm... our / my Nova JavaScript engine! j/k
Great stuff on the font front, thank you for the articles, Rust/C++ interop work, and keep it up!
K0nserv|11 months ago
steveklabnik|11 months ago
Go is also memory safe.
gpm|11 months ago
PS. Note that unlike most languages, a datarace on something like an int in go isn't undefined behavior, just non-deterministic and discouraged.
GaggiX|11 months ago
tedunangst|11 months ago
Keyb0ardWarri0r|11 months ago
unknown|11 months ago
[deleted]
raggi|11 months ago
wavemode|11 months ago
timewizard|11 months ago