←back to thread

517 points bkolobara | 1 comments | | HN request time: 0s | source
Show context
loeg ◴[] No.45041974[source]
The first save is from a failure of Rust's own making: async Rust. It's an awful footgun of a concept that is made vaguely bearable by the rest of the type system.
replies(1): >>45043314 #
love2read ◴[] No.45043314[source]
(but is still one of the most capable languages for async programming)
replies(1): >>45046794 #
loeg ◴[] No.45046794[source]
Maybe. I think async as a concept is kind of bad in general, but if you want it, GC makes it more ergonomic.
replies(1): >>45053783 #
1. IshKebab ◴[] No.45053783[source]
I think one of the most useful places for async is embedded - Embassy is amazing & you can't use GC there. Rust async almost seems like it was designed more for that than for the high level web stuff that lots of people use it for.

They definitely could have made it more ergonomic though. Pin is super confusing and there are a disappointing number of footguns, e.g. it's very easy to mess up loop/select and that's super common.