4 ms·
Coroutines, and generators more specifically, will be in my opinion the basis for asynchronous programming a la Rust. BEAM style concurrency requires preemptiv
by nesarkvechnep 2y ago
Coroutines, and generators more specifically, will be in my opinion the basis for asynchronous programming a la Rust.
BEAM style concurrency requires preemptive scheduling which I don’t see happening. It requires a rewrite from the ground up.
- hedora 2y agoDoes SBCL have a borrow checker? To the extent that things are immutable and side-effect free, then it’d be data race free like Rust, but how does it handle code that needs to mutate state?
- hayley-patton 2y agoIt has data races. Why would SBCL have a borrow checker?
- hedora 2y agoIdeally, some lisp would have one (or hopefully something simpler/more ergonomic) to eliminate data races, like the rust one does. The rust borrow checker also eliminates memory allocation bugs, but that’s less interesting to me.
- NikkiA 2y agoCarp ? https://github.com/carp-lang/Carp https://github.com/carp-lang/Carp
- az09mugen 2y agoThe lifetime borrow checker is a paradigm specific to Rust and is the only language to use it to my knowledge. Just for the perspective, Rust is 9 years old, SBCL 25 years old and the first implementation of Lisp is 64 years old