Honestly, I think it was a wrong article to introduce async rust. I’d much rather Theo check out the lazy-nature (ala effect-ts), the polling, stackless coroutines, and the state machine rust compiler generates with async functions. These are all different tradeoffs rust designers took, which are different to how Go, JS, BEAM approached concurrency. I found the differences incredibly insightful. Learning those deepened my understanding of computation in general. Maybe a deep-dive into different concurrency primitives, implementations, runtimes, strategies is a worthwhile (albeit complicated) video to record. I wish I knew an article that references those I could link to react to. 😢
@ethanniser
5 ай бұрын
100% Agree- Understanding the internals of different concurrency models and how they compare is really fascinating stuff and makes you a better developer. I have a draft script for a video on different concurrency strategies that I've been sitting on for a while, maybe ill start working on it again...
@tinrab
5 ай бұрын
We need Theo's Rust arc.
@SR-ti6jj
5 ай бұрын
He's not experienced enough for Rust yet
@javierflores09
5 ай бұрын
@@SR-ti6jj he's plenty experienced, just look how easily he was able to grasp the concepts behind Tokio and async rust in general here, rather this video shows that he doesn't like low-level languages and that's fine, not everyone needs to deal with the nitty gritty of meta-programming. If anything, I like Theo's content because it is centered around actual software and the reasoning behind the arquitectural decisions, not abstract concepts allow these issues to be tackled. Makes it feel more tangible for someone to come and tell me about certain product/service's story rather than the average tech dev telling me the intricacies of rust's type system and why "zero cost-abstractions" allow for these things to be made
@tuna5618
2 ай бұрын
@@javierflores09 rust's type system isn't that complicates apart from strings, strings are definitely very complicated, but a zero-cost abstraction is just an abstraction with little to no additional overhead. These concepts aren't nitty gritty, these are the basics every programmer should be comfortable with. If you think this is too academic or nitty gritty then I am quite concerned for you mate.
@javierflores09
2 ай бұрын
@@tuna5618 I'm sorry, did I hit a nerve? Because my point clearly went well over your head
@minciNashu
5 ай бұрын
7:58 that expect means "if things go wrong, then panic with this message". Kinda counterintuitive I guess.
@connormc711
5 ай бұрын
Yea. But then somehow it’s easier to remember because of how obtuse it is haha and you use it so much. Makes me wonder if Haskell was right a more English style syntax
@Luxalpa
5 ай бұрын
In JavaScript land, tests use `expect` to effectively do `assert`. This was also one of my things I had to get used to.
@_Aarius_
4 ай бұрын
f.await instead of await f() because it makes it much easier to chain. Idk why you'd prefer leading awaits
@yungouda
5 ай бұрын
He’ll come around.
@Wielorybkek
5 ай бұрын
In frontend we also have rules like this like avoiding long tasks of >50ms.
@neociber24
5 ай бұрын
There are rules on the frontend?
@zeratax
5 ай бұрын
i mean yeah go makes this simple but it’s solution obviously has compromises
@Kane0123
5 ай бұрын
send.send... a send by any other send would send just the same.
@gomi-hako
5 ай бұрын
I usually do let (tx, rx). t for taker and r for receiver.
@NotherPleb
5 ай бұрын
tx for transmitter
@siya.abc123
5 ай бұрын
I don't like Rust but I am 100% sure this is not a great article to learn about async rust 😅
Пікірлер: 21