Live data from Hacker News

Ask HN: Rust or Go?

news.ycombinator.com

11–14 of 14 posts

Re: Ask HN: Rust or Go?

#11
post #9
post #4

Earlier quoted context omitted.

Placing emphasis on correctness sounds like a plus. How does Rust do this? Does it only apply to memory management? For added performance I could live without gc, but I still prefer it.

Rust encodes object lifetime into its type system, and enforces constraints on how references are used through the borrow checker. With Rust, you don't need a GC. Object lifetimes (not just memory!) are automatically managed through static lifetime analysis. Time and CPU spent in a tracing GC is simply lost, it's emitted as waste heat. In Rust you can reclaim some of that back, and still use a programming style very…

I think it's probably rarely the case that static analysis beats GC, and this "static beats dynamic" rule probably doesn't generalize as well as you think it does.

Re: Ask HN: Rust or Go?

#12

Depends on where you want to take your career. Rust and Go are different tools that are good at solving different categories of problems. Additionally they are both languages that will provide different lessons about modern programming ergonomics. If you expect your programming career to be solving more high level "enterprise-y" problems like writing APIs, web services, and middleware, learning Go is probably going t…

There's huge amounts of low-level systems code written in Go; for example, gVisor reimplements most of the Linux kernel in userland. Go is also the dominant language of the container ecosystem.

You're unlikely to see Go kernel modules any time soon, so if kernel hacking is where you want to to, Rust is definitely the right way to get there.

Re: Ask HN: Rust or Go?

#13
post #8
post #5

Earlier quoted context omitted.

>How does Rust do this? Does it only apply to memory management? https://doc.rust-lang.org/book/ch04-00-understanding-ownersh... This link explains it pretty clearly with example code (which is easy enough to understand even if you've never seen rust code before).

If correctness only applies to memory management then choosing it’s not a benefit in deciding Go or Rust because Go has garbage collection.

It applies to everything.
Post reply on HN