Goish: A Rust runtime for Go people

2 months ago by cm0002 to c/rust

Goroutines, channels, select!, net/http, and crypto. Go 1.25's runtime idioms, ported ground-up into no_std Rust. Ship a static binary just like Go.

I guess Goish might be hated by many Rust fans and Go fans. Anyway, below is the example taken from its website.

use goish::{go, KB};
use goish::sync::WaitGroup;

#[goish::main]
fn main() {
   let wg = &WaitGroup::new();
   wg.Add(1_000_000);

   for i in 0..1_000_000 {
       // Explicit 2 KiB stack, sub-page allocated from the >chunked
       // stackpool - the opt-in for extreme spawn density. >Everyday
       // code just writes go!(move || ...) and never sizes a >stack.
       go!(stack(2 * KB), move || {
           do_work(i);
           wg.Done();
       });
   }

   wg.Wait();
}
FizzyOrange 4 points 2 months ago

Slop. And yeah I hate it. Rust already has plenty of concurrency features.

path: 0 25309889, hotness: undefined, score: 4, children: 0
Solemarc 4 points 2 months ago

I'm so confused, is this an AI company or is it one dude and his Claude subscription larping as a company? Because its the same 1 guy on all the Repo's that aren't forked.

path: 0 25317982, hotness: undefined, score: 4, children: 0
rust
rust

@programming.dev

login for more options
8329
1423
339

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits
  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

go to feed...