this post was submitted on 31 Oct 2023
262 points (90.2% liked)

Programmer Humor

19441 readers
59 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] pranaless@beehaw.org 31 points 1 year ago (1 children)
use std::process::Command;

fn main() {
    Command::new("sh")
        .arg("-c")
        .arg("echo Hello World!")
        .spawn()
        .unwrap();
}

Like this?

[–] 30p87@feddit.de 10 points 1 year ago (2 children)

No, more like

use std::process::Command; fn main() { Command::new("sh").arg("-c").arg("echo Hello World!").spawn().unwrap(); }

.
Just a little bit shorter, as it seems /s

[–] funkajunk@lemm.ee 8 points 1 year ago (1 children)
[–] 30p87@feddit.de 6 points 1 year ago

I did too. Multiple times in fact, I had to look at the other Rust code!

[–] TadoTheRustacean@programming.dev 2 points 1 year ago (1 children)
[–] pranaless@beehaw.org 1 points 1 year ago

Yes and no. While coreutils does provide an echo binary, shells also have a built-in for optimisation purposes.

At first I had the code calling the binary directly, but then changed it to spawning a shell (and so using the builtin). It's very cursed either way.